Permalink
Show file tree
Hide file tree
8 comments
on commit
sign in to comment.
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
go go gadget mysql fix for 2877
- Loading branch information
1 parent
1c966cc
commit e8b58d0
Showing
2 changed files
with
3 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
e8b58d0There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Breaks on large databases since no index is used with BINARY:
SELECT * FROM
storeWHEREkey= 'MYSQL_MIGRATION_LEVEL' 0.0015 secondsSELECT * FROM
storeWHERE BINARYkey= 'MYSQL_MIGRATION_LEVEL' timeoutpossible
SELECT * FROM
storeWHEREkey= 'MYSQL_MIGRATION_LEVEL' AND BINARYkey= 'MYSQL_MIGRATION_LEVEL' 0.0019 secondse8b58d0There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You know we are on 0.4.9 right? This is already fixed afaik. Please try latest.
e8b58d0There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Its still there an broke our current etherpad update:
ueberDB/mysql_db.js
Line 132 in 4b5d41d
I was only searching where and why BINARY was put in.
e8b58d0There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh
e8b58d0There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wait. Notice the and
e8b58d0There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I run benchmarks since this bug and my benchmarks disagree with you.... Are you 100 percent sure you are right?
e8b58d0There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems fiexed in ueberdb but etherpad 1.8.3 still uses ueberdb 0.4.5 which has BINARY with no AND:
this.db.query("SELECT
valueFROMstoreWHERE BINARYkey= ?", [key], function(err,results)e8b58d0There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes I know, and that's waiting on a patch fix being merged by @muxator - See etherpad open pull requests.
FWIW see https://travis-ci.org/github/ether/ueberDB bottom of the page. I have a new branch where I'm collecting data so this doesn't happen again.