mariadb/storage/oqgraph
Sergei Golubchik 79ad188d46 MDEV-37815 table engine attributes in partitioning is broken
remove copying of part_elem->option_struct to table->s->option_struct.
It meant that most of the time a handler had no access to its options
(that's why some handlers resorted to a complex process of guessing the
correct partition) and couldn't work concurrenty. Instead

* introduce handler::option_struct which will point to
  table->s->option_struct or part_elem->option_struct as appropriate,
  the handler can use it any time as needed. A handler should not use
  table->s->option_struct unless it really knows what it's doing and has
  verified that it doesn't break partitioning
* rename option_struct in table->s to option_struct_table and in
  part_elem to option_struct_part to emphasize it's semantics and
  prevent incorrect usage.
* fix engines accordingly.
2026-02-06 17:46:52 +01:00
..
cmake Change Find*.cmake modules to match conventions 2021-10-27 15:55:14 +02:00
mysql-test/oqgraph remove deprecated since 10.4 2024-02-17 17:10:25 +01:00
CMakeLists.txt MDEV-31358: Update description for MariaDB debian/rpm packages 2023-07-03 17:45:58 +10:00
graphcore-config.h Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
graphcore-graph.cc Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
graphcore-graph.h Merge branch '5.5' into 10.1 2019-05-11 19:15:57 +03:00
graphcore-types.h Merge branch '5.5' into 10.1 2019-05-11 19:15:57 +03:00
graphcore.cc MDEV-33746 [fixup] Add suggested overrides in oqgraph 2024-06-25 14:22:25 +08:00
graphcore.h Merge 10.2 into 10.3 2019-05-14 17:18:46 +03:00
ha_oqgraph.cc MDEV-37815 table engine attributes in partitioning is broken 2026-02-06 17:46:52 +01:00
ha_oqgraph.h cleanup: remove #ifdef MYSQL_VERSION_ID 2026-02-06 17:46:50 +01:00
oqgraph_config.h.in
oqgraph_judy.cc Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
oqgraph_judy.h oqgraph: remove clang warnings 2023-09-08 10:50:15 +01:00
oqgraph_probes.d Update FSF address 2019-05-10 20:52:00 +03:00
oqgraph_shim.cc Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
oqgraph_shim.h Fix typos in C comments inside storage/ 2025-03-26 16:56:50 +04:00
oqgraph_thunk.cc cleanup: remove #ifdef MYSQL_VERSION_ID 2026-02-06 17:46:50 +01:00
oqgraph_thunk.h Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
README

OQGraph storage engine v3
Copyright (C) 2007-2014 Arjen G Lentz & Antony T Curtis for Open Query, & Andrew McDonnell

The Open Query GRAPH engine (OQGRAPH) is a computation engine allowing
hierarchies and more complex graph structures to be handled in a
relational fashion. In a nutshell, tree structures and
friend-of-a-friend style searches can now be done using standard SQL
syntax, and results joined onto other tables.

Based on a concept by Arjen Lentz
v3 implementation by Antony Curtis, Arjen Lentz, Andrew McDonnell
For more information, documentation, support, enhancement engineering,
see http://openquery.com/graph or contact graph@openquery.com

INSTALLATION

OQGraph requires at least version 1.40.0 of the Boost Graph library. To
obtain a copy of the Boost library, see http://www.boost.org/
This can be obtained in Debian Wheezy by `apt-get install libboost-graph-dev`

OQGraph requires libjudy - http://judy.sourceforge.net/
This can be obtained in Debian Wheezy by `apt-get install libjudy-dev`

BUILD (example)

cd path/to/maria/source
mkdir build   # use symlink to scratch
cd build    
CONFIGURE="-DWITH_EXTRA_CHARSETS=complex -DWITH_PLUGIN_ARIA=1 -DWITH_READLINE=1 -DWITH_SSL=bundled -DWITH_MAX=1 -DWITH_EMBEDDED_SERVER=1"
cmake .. $CONFIGURE     
make -j5
mysql-test-run --suite oqgraph