New items unexpectedly merging with old

Starting this morning, when we try to create and save a new item, the new item’s metadata and files merge with an older item instead of saving as a new item.

Yesterday our web host updated the database on our server from MySQL 5.6 to MariaDB 10.3.14. We are using Omeka version 2.6.

Are there any known conflicts between Omeka 2.6 and MariaDB 10.3.14?

Commenting to say that I deactivated all plugins, tested, and the problem persists. New records are merging with old instead of creating a new record.

Hmmm… I haven’t heard any reports of that happening before. Maybe there could have been some issue with the database update and it’s not generating the correct ID for new records? You could look at the output of SHOW CREATE TABLE omeka_items to see what ID the database is going to assign next: this should be a value that’s greater than any existing item IDs.

1 Like

Thanks John.

Sure enough, SHOW CREATE TABLE omeka_items outputs an ID that already exists in the database. Harrumph.

As a test I ran:

ALTER TABLE omek_items AUTO_INCREMENT = 19170;

which should set the ID value for auto increment higher than the most recent item. Would be curious if that fixes it, though it still wouldn’t answer why it was necessary.

Yeah, I’m not sure what’s going on there… it would indicate some kind of problem on the MariaDB end of things, or possibly in the conversion process… this is a pretty basic thing that it’s strange to see not being accounted for correctly.

I’m not sure why, but that did fix it!

Well I’m glad to hear it’s working and I’m going to light a few candles and say a prayer that it’s not a sign of larger issues to come. This upgrade was particular impactful as we moved incrementally from 5.6 to 5.7 to 10.1 to 10.2 to 10.3 in one night to get things running smoothly on that server at the latest version. But it is the first to run 10.3 (we have several on 10.2 and hadn’t heard of any issues). Very odd bug indeed.

1 Like

My remaining concern would be that the other autoincrement values for the other tables could be wrong in the same way.

Somewhere along the line MySQL/MariaDB changed the way the autoincrement is handled for InnoDB tables: it used to be re-calculated at server startup and it switched to being stored on disk, so I’d imagine that’s related to the issue.

Just got another error after saving a new item. The Item did save properly.

Omeka has encountered an error

Google_Service_Exception

{
“error”: {
“code”: 503,
“message”: “The service is currently unavailable.”,
“status”: “UNAVAILABLE”
}
}

Google_Service_Exception: { “error”: { “code”: 503, “message”: “The service is currently unavailable.”, “status”: “UNAVAILABLE” } } in /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/views/public/vendor/vendor/google/apiclient/src/Google/Http/REST.php:118 Stack trace: #0 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/views/public/vendor/vendor/google/apiclient/src/Google/Http/REST.php(94): Google_Http_REST::decodeHttpResponse(Object(GuzzleHttp\Psr7\Response), Object(GuzzleHttp\Psr7\Request), ‘Google_Service_…’) #1 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/views/public/vendor/vendor/google/apiclient/src/Google/Task/Runner.php(176): Google_Http_REST::doExecute(Object(GuzzleHttp\Client), Object(GuzzleHttp\Psr7\Request), ‘Google_Service_…’) #2 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/views/public/vendor/vendor/google/apiclient/src/Google/Http/REST.php(58): Google_Task_Runner->run() #3 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/views/public/vendor/vendor/google/apiclient/src/Google/Client.php(788): Google_Http_REST::execute(Object(GuzzleHttp\Client), Object(GuzzleHttp\Psr7\Request), ‘Google_Service_…’, Array) #4 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/views/public/vendor/vendor/google/apiclient/src/Google/Service/Resource.php(232): Google_Client->execute(Object(GuzzleHttp\Psr7\Request), ‘Google_Service_…’) #5 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/views/public/vendor/vendor/google/apiclient-services/src/Google/Service/Fusiontables/Resource/Query.php(47): Google_Service_Resource->call(‘sql’, Array, ‘Google_Service_…’) #6 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/GeolocationPlugin.php(424): Google_Service_Fusiontables_Resource_Query->sql(Array) #7 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/GeolocationPlugin.php(377): GeolocationPlugin->updateFusionTableRows(Object(Item)) #8 /home/ramapoed/digital.janeaddams.ramapo.edu/plugins/Geolocation/GeolocationPlugin.php(356): GeolocationPlugin->deleteFusionTableRows(Object(Item)) #9 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Omeka/Plugin/Broker.php(154): GeolocationPlugin->hookAfterSaveItem(Array) #10 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Omeka/Record/AbstractRecord.php(301): Omeka_Plugin_Broker->callHook(‘after_save_item’, Array) #11 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Omeka/Record/AbstractRecord.php(548): Omeka_Record_AbstractRecord->runCallbacks(‘afterSave’, Array) #12 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Omeka/Controller/AbstractActionController.php(188): Omeka_Record_AbstractRecord->save(false) #13 /home/ramapoed/digital.janeaddams.ramapo.edu/application/controllers/ItemsController.php(148): Omeka_Controller_AbstractActionController->addAction() #14 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Zend/Controller/Action.php(516): ItemsController->addAction() #15 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Zend/Controller/Dispatcher/Standard.php(308): Zend_Controller_Action->dispatch(‘addAction’) #16 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #17 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Zend/Application/Bootstrap/Bootstrap.php(105): Zend_Controller_Front->dispatch() #18 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Zend/Application.php(384): Zend_Application_Bootstrap_Bootstrap->run() #19 /home/ramapoed/digital.janeaddams.ramapo.edu/application/libraries/Omeka/Application.php(73): Zend_Application->run() #20 /home/ramapoed/digital.janeaddams.ramapo.edu/admin/index.php(28): Omeka_Application->run() #21 {main}

That error is definitely an issue of the Geolocation plugin communicating with Google so likely unrelated to the database issue you were experiencing previously.

That makes sense-- hasn’t happened again, so it’s likely some wonky data. Thanks!

I am having this same problem, but I am unaware that there has been any database changes and I don’t use the Geolocation plugin on that site.

Mark, since you opened a support ticket with us I’ll address it there.

This topic was automatically closed 250 days after the last reply. New replies are no longer allowed.