rdfio/RDFIO

MariaDB support

kghbln opened this issue ยท 18 comments

Setup

  • MediaWiki | 1.29.0 (a112e4f)20:23, 13 July 2017
  • PHP | 5.6.30-0+deb8u1 (apache2handler)
  • MariaDB | 10.0.32-MariaDB-1~jessie
  • Semantic MediaWiki | 3.0.0-alpha (cea582e) 14:59, 7 August 2017
  • RDFIO | v2.4.0 (6b69cb4) 23:41, 9 August 2017

Issue*
There is still something in the water. I get

mysqli_connect(): Headers and client library minor version mismatch. Headers:50553 Library:100032 in /../w/vendor/semsol/arc2/store/ARC2_Store.php on line 51

This is probably an ARC2 issue.

However when trying to setup the RDFIO store via "RDFIOAdmin":

Error setting up store: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '0210020150926 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE ut' at line 1 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '0210020150926' at line 1 Could not create "triple" table (No database selected). in ARC2_StoreTableManager

Oh, thanks so much for reporting, @kghbln ! Hadn't dared to try with SMW 3 yet, but it is sure high time for that now! :)

I believe there should not be that much of a difference, at least when it comes to database schema stuff.

Yeah, I was also suspecting it might be something with MariaDB and UTF8 ... as UTF8 issues have been abundant with MySQL in the past ...

(Bringing up my VM to try out now!)

I have configured the database server to strictly run utf8:

Server characterset:	utf8
Db     characterset:	utf8
Client characterset:	utf8
Conn.  characterset:	utf8

I suspect it may be the database name itself which starts with a 0. For whatever reason this does not play well in all situations.

@kghbln How do you go about installing SMW 3.0-alpha? Just git, or is there some way using composer? (Sorry, still kinda new to composer)

UPDATE: Trying with git now ...

How do you go about installing SMW 3.0-alpha? Just git, or is there some way using composer? (Sorry, still kinda new to composer)

INSTALL :)

Eh, uh ๐Ÿ˜Š

Ok, with 3.0-alpha, I now get, on most RDFIO Special Pages:

A database query error has occurred. This may indicate a bug in the software.
[62e20beab05666f7b3f67252] 2017-08-10 12:24:52: Fatal exception of type "Wikimedia\Rdbms\DBQueryError"

Versions:

OS | Ubuntu 16.04.2 LTS
PHP | PHP 7.0.18-0ubuntu0.16.04.1
DB | MySQL 5.7.19-0ubuntu0.16.04.1
MediaWiki | 1.29.0
SMW | 3.0.0-alpha (e6137dd)
RDFIO | v2.4.0 (5a5fc01)

Ok, with 3.0-alpa, I now get, on most RDFIO Special Pages:

Ouch.

So, perhaps a confirmation then :) Hoping to get more details out of it ... did you do something special apart from $wgShowExceptionDetails = true; that doesn't seem to be enough here, to see the detailed error message?

What about also using $wgShowSQLErrors = true; and $wgShowDBErrorBacktrace = true;?

Sorry, I feel I'm getting lazy, or too long since I did this ๐Ÿ˜Ÿ ... thanks anyway!

(EDIT: False alarm ... the RDFIO system tests destroyed the DB schema ...)

Ok, well, it works for me, with:

OS | Ubuntu 16.04.2 LTS
PHP | 7.0.18-0ubuntu0.16.04.1 (fpm-fcgi)
DB | MySQL 5.7.19-0ubuntu0.16.04.1
MediaWiki | 1.29.0
SMW | 3.0.0-alpha (e6137dd)
RDFIO | v2.4.0 (5a5fc01)

Tested so far: Unittests, RDF import form, SPARQL endpoint

I just successfully installed on smw.o:

  • OS | Ubuntu 16.04.2 LTS
  • MediaWiki | 1.27.3 (2fd9800)06:05, 7 July 2017
  • PHP | 7.0.18-0ubuntu0.16.04.1 (apache2handler)
  • MySQL | 5.7.19-0ubuntu0.16.04.1
  • Semantic MediaWiki | 2.5.4 (9d8fac2) 14:13, 7 August 2017
  • RDFIO | v2.4.0 (6b69cb4) 23:41, 9 August 2017

So it is a MariaDB thing.

Ok, good to know! I have to learn a little MariaDB then, to figure this out :)

Ok, good to know! I have to learn a little MariaDB then, to figure this out :)

This will be awesome!

Ok, good to know! I have to learn a little MariaDB then, to figure this out :)

I just comes to my mind that Debian 9 which got released in June switched to MariaDB as the standard MySQL database system. So this will become more and more important in the future.

@kghbln How do you go about installing SMW 3.0-alpha?

Yes, right now that shouldn't be any different to 2.5 since I haven't really started to dump all the deprecated classes/methods that have been accumulated of the years but things will change and ultimate break but as long as you test against master you can detect those fairly early.

PS: See the DataValueFactory or DIProperty class for example.