Hello, I'm experiencing a very weird issue when tr...
# community-help
j
Hello, I'm experiencing a very weird issue when trying to add an analytics rule to our self hosted typesense server, I'll paste the stack trace in this thread
Copy code
E20241119 20:30:29.604357   131 backward.hpp:4200] Stack trace (most recent call last) in thread 131:
E20241119 20:30:29.604434   131 backward.hpp:4200] #13   Object "", at 0xffffffffffffffff, in 
E20241119 20:30:29.604446   131 backward.hpp:4200] #12   Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x7fd7e7e9aa03, in __clone
E20241119 20:30:29.604460   131 backward.hpp:4200] #11   Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x7fd7e7e09ac2, in 
E20241119 20:30:29.604470   131 backward.hpp:4200] #10   Object "/opt/typesense-server", at 0x55f00fd49c33, in execute_native_thread_routine
E20241119 20:30:29.604483   131 backward.hpp:4200] #9  | Source "include/threadpool.h", line 59, in operator()
E20241119 20:30:29.604501   131 backward.hpp:4200]     | Source "/usr/include/c++/10/future", line 1592, in _M_run
E20241119 20:30:29.604522   131 backward.hpp:4200]     | Source "/usr/include/c++/10/future", line 1459, in _M_set_result
E20241119 20:30:29.604542   131 backward.hpp:4200]     | Source "/usr/include/c++/10/future", line 412, in call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>()>*, bool*>
E20241119 20:30:29.604562   131 backward.hpp:4200]     | Source "/usr/include/c++/10/mutex", line 729, in __gthread_once
E20241119 20:30:29.604579   131 backward.hpp:4200]       Source "/usr/include/x86_64-linux-gnu/c++/10/bits/gthr-default.h", line 700, in ThreadPool [0x55f00d1dd945]
E20241119 20:30:29.604595   131 backward.hpp:4200] #8    Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x7fd7e7e0eee7, in 
E20241119 20:30:29.604612   131 backward.hpp:4200] #7  | Source "/usr/include/c++/10/future", line 572, in operator()
E20241119 20:30:29.604627   131 backward.hpp:4200]       Source "/usr/include/c++/10/bits/std_function.h", line 622, in _M_do_set [0x55f00d1dcc92]
E20241119 20:30:29.604646   131 backward.hpp:4200] #6  | Source "/usr/include/c++/10/bits/std_function.h", line 292, in __invoke_r<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<_Fn, _Alloc, _Res(_Args ...)>::_M_run<std::_Bind<BatchedIndexer::run()::<lambda()>()>, std::allocator<int>, void, {}>::<lambda()>, void>&>
E20241119 20:30:29.604665   131 backward.hpp:4200]     | Source "/usr/include/c++/10/bits/invoke.h", line 115, in __invoke_impl<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<void>, std::__future_base::_Result_base::_Deleter>, std::__future_base::_Task_state<_Fn, _Alloc, _Res(_Args ...)>::_M_run<std::_Bind<BatchedIndexer::run()::<lambda()>()>, std::allocator<int>, void, {}>::<lambda()>, void>&>
E20241119 20:30:29.604684   131 backward.hpp:4200]     | Source "/usr/include/c++/10/bits/invoke.h", line 60, in operator()
E20241119 20:30:29.604699   131 backward.hpp:4200]     | Source "/usr/include/c++/10/future", line 1397, in operator()
E20241119 20:30:29.604714   131 backward.hpp:4200]     | Source "/usr/include/c++/10/future", line 1456, in __invoke_r<void, std::_Bind<BatchedIndexer::run()::<lambda()>()>&>
E20241119 20:30:29.604730   131 backward.hpp:4200]     | Source "/usr/include/c++/10/bits/invoke.h", line 110, in __invoke_impl<void, std::_Bind<BatchedIndexer::run()::<lambda()>()>&>
E20241119 20:30:29.604748   131 backward.hpp:4200]     | Source "/usr/include/c++/10/bits/invoke.h", line 60, in operator()<>
E20241119 20:30:29.604763   131 backward.hpp:4200]     | Source "/usr/include/c++/10/functional", line 499, in __call<void>
E20241119 20:30:29.604779   131 backward.hpp:4200]     | Source "/usr/include/c++/10/functional", line 416, in __invoke<BatchedIndexer::run()::<lambda()>&>
E20241119 20:30:29.604791   131 backward.hpp:4200]     | Source "/usr/include/c++/10/bits/invoke.h", line 95, in __invoke_impl<void, BatchedIndexer::run()::<lambda()>&>
E20241119 20:30:29.604807   131 backward.hpp:4200]       Source "/usr/include/c++/10/bits/invoke.h", line 60, in _M_invoke [0x55f00d1d6a58]
E20241119 20:30:29.604822   131 backward.hpp:4200] #5    Source "src/batched_indexer.cpp", line 292, in operator() [0x55f00d1d5a8b]
E20241119 20:30:29.604837   131 backward.hpp:4200] #4    Source "src/core_api.cpp", line 2847, in post_create_analytics_rules [0x55f00d31ebed]
E20241119 20:30:29.604856   131 backward.hpp:4200] #3    Source "src/analytics_manager.cpp", line 27, in create_rule [0x55f00d168425]
E20241119 20:30:29.604872   131 backward.hpp:4200] #2    Source "src/analytics_manager.cpp", line 239, in create_index [0x55f00d166ffc]
E20241119 20:30:29.604889   131 backward.hpp:4200] #1  | Source "src/store.cpp", line 68, in shared_lock
E20241119 20:30:29.604907   131 backward.hpp:4200]     | Source "/usr/include/c++/10/shared_mutex", line 722, in lock_shared
E20241119 20:30:29.604924   131 backward.hpp:4200]     | Source "/usr/include/c++/10/shared_mutex", line 421, in lock_shared
E20241119 20:30:29.604941   131 backward.hpp:4200]     | Source "/usr/include/c++/10/shared_mutex", line 224, in __glibcxx_rwlock_rdlock
E20241119 20:30:29.604957   131 backward.hpp:4200]       Source "/usr/include/c++/10/shared_mutex", line 73, in insert [0x55f00d4d6d10]
E20241119 20:30:29.604974   131 backward.hpp:4200] #0    Object "/usr/lib/x86_64-linux-gnu/libc.so.6", at 0x7fd7e7e0f64c, in __pthread_rwlock_rdlock
Segmentation fault (Address not mapped to object [0x5e8])
I20241119 20:30:30.577854   131 batched_indexer.cpp:534] Saving currently applying index: 1364092
I20241119 20:30:30.578074   131 core_api.cpp:67] No in-flight search queries were found.
E20241119 20:30:30.578109   131 typesense_server.cpp:135] Typesense 27.1 is terminating abruptly.
wat? exit
and here is my cURL
Copy code
curl --location 'BASE_URL/analytics/rules' \
--header 'Content-Type: application/json' \
--header 'Content-Type: application/json' \
--header 'X-TYPESENSE-API-KEY: TYPESENSE_API_KEY' \
--data '{
        "name": "products_popularity",
        "type": "counter",
        "params": {
            "source": {
                "collections": ["products_alias"],
                "events":  [
                    {"type": "click", "weight": 1, "name": "products_click_event"}
                ]
            },
            "destination": {
                "collection": "products_alias",
                "counter_field": "popularity"
            }
        }
      }'
Ok nvm I figured it out. I was missing
Copy code
--analytics-dir=/path/to/analytics-data
when creating the typesense server
👍 2