services module
Update #7301

Failed: DatabaseSchemaObjectDoesNotExistException: Cannot add field services_endpoint.debug: table doesn't exist. in DatabaseSchema_mysql->addField() (line 320 of /home/hoslot5/public_html/includes/database/mysql/schema.inc).

CommentFileSizeAuthor
#8 upgrade-d6-d7.patch2.02 KBmarcingy

Comments

kylebrowning’s picture

Status: Active » Postponed (maintainer needs more info)

Can you give me more information on how to reproduce this?

kylebrowning’s picture

Status: Postponed (maintainer needs more info) » Closed (cannot reproduce)
astutonet’s picture

Priority: Normal » Critical
Status: Closed (cannot reproduce) » Active

Hi.

I'm updating a site from D6 to D7. I also have a problem with update #7301 that may be related to this issue.

Whem I running update.php, I receiving this message:

services module
Update #7301
Failed: DatabaseSchemaObjectExistsException: Cannot add field services_endpoint.debug: field already exists. in DatabaseSchema_mysql->addField() (line 323 of C:\wamp\www\france\includes\database\mysql\schema.inc).

Any idea?

Tks

kylebrowning’s picture

Status: Active » Closed (cannot reproduce)

There is no upgrade path between 6 and 7 for services., and furthermore you shouldn't need to run update.php on old updates if you have the latest version of services, the updates are already applied to the schema.

astutonet’s picture

Status: Closed (cannot reproduce) » Active

Ok.

@kylebrowning, I also have noticed this type of problem with other modules (examples: CKEditor; LinkIt, ; HTMLMail, etc).

The following messages also are assigned to the Services module while running of update.php:

7301 - Update 7301 adds debugging to each endopint to facilitate easier development
7302 - Update 7302 restores the usage of Chaos tools to check for enabledisable-status
7303 - Update 7303 adds the possibility to configure server settings on a per-endpoint basis. and sets upgrades all new servers to have at least services session enabled.
7399 - Update 7304 removes the title as it is no longer used

As this message is always displayed during execution of update.php, I think some instruction is missing in the services.install file.

With the other modules, a simple patch solves the issue.

You can help me?

Tks.

kylebrowning’s picture

Status: Active » Closed (cannot reproduce)

The updates are only needed if you used a previous version of services 3.x Why is your schema attempting to apply these updates?

astutonet’s picture

Category: bug » feature
Priority: Critical » Major
Status: Closed (cannot reproduce) » Active

Hi @kylebrowning.

I'll try to explain to you why there is need for update.

The informations of Services module are related to version 6.x-3.0.

When the database was imported to the new version of Drupal, the module Services 6.x-3.0 weren't excluded (I don't find any information saying that it should be done before the upgrade) and the information remained in the database.

When the "update.php" is executed, it checks the old information in the database and does the updates according to the needs of new installed modules.

So if the old database (6.x-3.0 update 7304) table stores a title of a field and the new version (7.x-3.0) does not use this information, the update should treat this information (excluding or truncating the information) so that when update.php is run again, there is no mismatch of information.

As it stands, all the sites who have upgraded from D6 to D7 and have the Services module installed, when running "update.php" will receive the information in #5 (always).

Therefore, the version 7.x-3.0 of Services module should treat the information brought from version 6.x-3.0, even if only to exclude them from the database.

Perhaps you understand best by seeing this comment related to another module: http://drupal.org/node/1347682#comment-5272444.

I hope you understand "why" of the need.

Any questions, just ask.

Tks.

marcingy’s picture

Status: Active » Needs review
StatusFileSize
new2.02 KB

Initial upgrade path path.

astutonet’s picture

@marcingy,

The patch was applied to the services.install file. Then, the update.php was run. All operations of updating the database were implemented and the Drupal did not report any problems.

Thank you.

kylebrowning’s picture

Status: Needs review » Reviewed & tested by the community
kylebrowning’s picture

Status: Reviewed & tested by the community » Fixed
elBradford’s picture

Thanks for that patch, it worked great! I was hoping it would make it into 7.10 but apparently it didn't. Great work though, allowed the updates to finish.

marcingy’s picture

This has nothing to do with drupal core release what so ever.

Starminder’s picture

Is this getting rolled into a dev release?

kylebrowning’s picture

Its already in the dev build.

jeroenb’s picture

I'm having the same issue, upgrading from D6 to D7, had services installed (6.2.x). Just tried installing 6.3.x (the dev, to get the patch) and got:

Update #7301
Failed: DatabaseSchemaObjectDoesNotExistException: Cannot add field services_endpoint.debug: table doesn't exist. in DatabaseSchema_mysql->addField() (line 320 of /Volumes/data/Users/jeroenb/Projects/proximity-dashboard/trunk/includes/database/mysql/schema.inc).

marcingy’s picture

Upgrades from 2.x to 3.x are not supported and never will be.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

crazyben21’s picture

Status: Closed (fixed) » Needs work

Hi,

I'm still getting the error after using the latest development release. I'm upgrading my drupal website on my lab system from 6 to 7. The problem is I never was using the services module on drupal 6 and it's giving me this error.

services module
Update #7301

Failed: DatabaseSchemaObjectDoesNotExistException: Cannot add field services_endpoint.debug: table doesn't exist. in DatabaseSchema_mysql->addField() (line 325 of C:\Users\Juni\Desktop\drupalXhtml\includes\database\mysql\schema.inc).

The problem is in my case is, how can the table exist if this my first time using the service module and I'm not upgrading from any previous service module.

Any help will be greatly appreciated. In the mean time I will disable this module and delete the folder.

marcingy’s picture

@crazyben21 services must have been installed at some point in time because if it hadn't been the update hook would not fire. You should uninstall the service module from the module uninstall screen (drupal core).

marcingy’s picture

Category: feature » support
Priority: Major » Normal
crazyben21’s picture

Well I check the uninstall when I was drupal 6 and it's not there. When I remove it from drupal 7 I also did and uninstall. Is there any way to uninstall it manually on the mysql database?

marcingy’s picture

Strange, yes you can delete the services module manually from the system table.

marcingy’s picture

Status: Needs work » Closed (fixed)

Closing as old support request