apache / apache/datasketches-postgresql
Segfault in aod_sketch_get_estimate while lgk=16
- Vorherrschende Sprache
- C
- Sterne
- 96
- Forks
- 13
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Hi team.
I am experiencing segfault while I am running datasketches-postgresql tests.
Here is the error log
```
psql:test/aod_sketch_test.sql:25: server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
psql:test/aod_sketch_test.sql:25: error: connection to server was lost
2025-05-23 21:14:29.609 UTC [13567] LOG: server process (PID 13607) was terminated by signal 11: Segmentation fault
2025-05-23 21:14:29.609 UTC [13567] DETAIL: Failed process was running: select aod_sketch_get_estimate(aod_sketch_union(sketch, 16)) from aod_sketch_test;
```
I am running with version datasketches-postgresql 1.7.0, with datasketches-cpp 5.0.0, on PostgreSQL 15.12 OEL7 linux distribution.
Here is my datasketches-postgresql set up script
```
# install datasketches-cpp
curl -O https://archive.apache.org/dist/datasketches/cpp/5.0.0/apache-datasketches-cpp-5.0.0-src.zip
unzip apache-datasketches-cpp-5.0.0-src.zip
mv apache-datasketches-cpp-5.0.0-src datasketches-cpp
# install boost
curl -O https://archives.boost.io/release/1.75.0/source/boost_1_75_0.tar.bz2
tar -xjf boost_1_75_0.tar.bz2
mv boost_1_75_0 boost
export BUILD_USER_DIR="/home/builduser"
# mark the extension as trusted, so that users can create it without
# superuser permissions
echo "trusted = true" >> datasketches.control
su builduser -c "make"
su builduser -c "make install"
# clean up the already created data directory
su builduser -c "rm -rf ${BUILD_USER_DIR}/data_dir"
# re-create the data directory
su builduser -c "mkdir -p ${BUILD_USER_DIR}"
# to do regression tests, we need to create new data dir
su builduser -c "pg_ctl -D ${BUILD_USER_DIR}/data_dir init"
# start postgres for testing
su builduser -c "pg_ctl start -D ${BUILD_USER_DIR}/data_dir"
# run tests
su builduser -c "psql -h 127.0.0.1 -d postgres -c 'create database test;'"
su builduser -c "make tests"
```
Is there anything I did wrong? Looking forward to your response.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginnen Sie mit test/aod_sketch_test.sql in Zeile 25 und reproduzieren Sie die Abfrage aod_sketch_get_estimate(aod_sketch_union(sketch, 16)) unter Verwendung der gemeldeten Versionen von PostgreSQL, datasketches-postgresql und datasketches-cpp. Verfolgen Sie den Absturz und verwenden Sie den Regressionstest, um zu überprüfen, dass die Abfrage ohne ein Signal zur Beendigung des Servers abgeschlossen wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- c, cpp, linux, postgresql
- Bereich
- databases
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100