← Back to team overview

oqgraph-dev team mailing list archive

[Bug 796647] Re: oqgraphv3. Read only but no updates from basetable

 

Had a look at this one.  I think it is still manifesting somehow.

I cant repeat it exactly as shown here; in basic.test I add and delete rows at various points so just now added some extra selects at various points to check the added data is as expected.
One condition that must hold is select count(*) from graph_base == select count(*) from graph.

But then I had an odd result in a final select * from graph after
deleting some rows - from a 23 row graph and having deleted  two rows
then running a dijkstras query then doing a select *, the data returned
from graph only returned the first 6 rows of what should have been 21...
so something causes the return from `select * from graph` to not show
everything after some combinations of modifications to the underlying
graph.

I'll try and isolate a specific test separately from basic.test for
regression testing

-- 
You received this bug notification because you are a member of OQgraph
developers, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/796647

Title:
  oqgraphv3. Read only but no updates from basetable

Status in OQGraph Engine for MariaDB:
  Confirmed

Bug description:
  Moin,
  MariaDB [test]> select * from  information_schema.PLUGINS where PLUGIN_NAME="OQGRAPH"\G
  *************************** 1. row ***************************
             PLUGIN_NAME: OQGRAPH
          PLUGIN_VERSION: 3.0
           PLUGIN_STATUS: ACTIVE
             PLUGIN_TYPE: STORAGE ENGINE
     PLUGIN_TYPE_VERSION: 50300.0
          PLUGIN_LIBRARY: ha_oqgraph.so
  PLUGIN_LIBRARY_VERSION: 0.0
           PLUGIN_AUTHOR: Arjen Lentz & Antony T Curtis, Open Query
      PLUGIN_DESCRIPTION: Open Query Graph Computation Engine (http://openquery.com/graph)
          PLUGIN_LICENSE: GPL
         PLUGIN_MATURITY: Unknown
     PLUGIN_AUTH_VERSION: Unknown
  MariaDB [test]> select version();
  +---------------------+
  | version()           |
  +---------------------+
  | 5.3.0-MariaDB-alpha |
  +---------------------+

  Its great you can use persistent tables to store the graph. A drawback with version v3 is if you chenge the base/persistent table it is ignored by the memory-table. Dropping/creating the memory-table is a workaround.
  MariaDB [test]> desc base;
  +--------+---------+------+-----+---------+-------+
  | Field  | Type    | Null | Key | Default | Extra |
  +--------+---------+------+-----+---------+-------+
  | von    | int(11) | NO   | PRI | NULL    |       |
  | nach   | int(11) | NO   | PRI | NULL    |       |
  | weight | double  | NO   |     | NULL    |       |
  +--------+---------+------+-----+---------+-------+
  MariaDB [test]> desc graph; 
  +--------+----------------------+------+-----+---------+-------+
  | Field  | Type                 | Null | Key | Default | Extra |
  +--------+----------------------+------+-----+---------+-------+
  | latch  | smallint(5) unsigned | YES  | MUL | NULL    |       |
  | origid | bigint(20) unsigned  | YES  |     | NULL    |       |
  | destid | bigint(20) unsigned  | YES  |     | NULL    |       |
  | weight | double               | YES  |     | NULL    |       |
  | seq    | bigint(20) unsigned  | YES  |     | NULL    |       |
  | linkid | bigint(20) unsigned  | YES  |     | NULL    |       |
  +--------+----------------------+------+-----+---------+-------+

  3 rows in the basetable:
  MariaDB [test]> SELECT * FROM base;
  +-----+------+--------+
  | von | nach | weight |
  +-----+------+--------+
  |   3 |    5 |      2 |
  |   5 |    4 |      1 |
  |   5 |    6 |      1 |
  +-----+------+--------+

  and in the graph-table
  MariaDB [test]> SELECT * from graph;
  +-------+--------+--------+--------+------+--------+
  | latch | origid | destid | weight | seq  | linkid |
  +-------+--------+--------+--------+------+--------+
  |  NULL |      3 |      5 |      2 | NULL |   NULL |
  |  NULL |      5 |      4 |      1 | NULL |   NULL |
  |  NULL |      5 |      6 |      1 | NULL |   NULL |
  +-------+--------+--------+--------+------+--------+

  but:
  MariaDB [test]> insert into base values(6,3,1);
  MariaDB [test]> SELECT * FROM base;
  +-----+------+--------+
  | von | nach | weight |
  +-----+------+--------+
  |   3 |    5 |      2 |
  |   5 |    4 |      1 |
  |   5 |    6 |      1 |
  |   6 |    3 |      1 |
  +-----+------+--------+

  MariaDB [test]> SELECT * from graph;
  +-------+--------+--------+--------+------+--------+
  | latch | origid | destid | weight | seq  | linkid |
  +-------+--------+--------+--------+------+--------+
  |  NULL |      3 |      5 |      2 | NULL |   NULL |
  |  NULL |      5 |      4 |      1 | NULL |   NULL |
  |  NULL |      5 |      6 |      1 | NULL |   NULL |
  +-------+--------+--------+--------+------+--------+

  Is this going to be fixed?
  Or a design-issue?

  Regards
  Erkan
  (btw: why do I need keys on the base-table?)

To manage notifications about this bug go to:
https://bugs.launchpad.net/oqgraph/+bug/796647/+subscriptions