[SERVER-9099] Multiple failures when creating a collection using international character sets Created: 23/Mar/13 Updated: 25/Mar/13 Resolved: 25/Mar/13 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | 2.2.3 |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Brandon Black | Assignee: | Unassigned |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Operating System: | OS X | ||||||||||||
| Steps To Reproduce: | See description. |
||||||||||||
| Participants: | |||||||||||||
| Description |
|
Creating a collection with Japanese characters in the name causes a few different odd failures to occur. Below are are my results from MongoDB 2.2.3 using the mongo shell to illustrate the issue. In the first attempt, mongo will raise an invalid namespace exception:
On the second attempt, mongo shows an error stating that the collection already exists even though it wasn't created successfully in the previous attempt:
However, Japanese characters proceeded by letters or numbers works fine:
I've validated that the same behavior exists on 2.4.0 as well. In addition to the shell examples from above, this behavior is the same when interacting with MongoDB through the Ruby driver and the Python driver. Even if this isn't something we support for a valid reason, it seems like we're not handling it correctly given the error messages being shown. |
| Comments |
| Comment by Tad Marshall [ 23/Mar/13 ] | |||||||||||||||||||||||||||||||||||||||||||||
|
Thanks, Brandon. I marked | |||||||||||||||||||||||||||||||||||||||||||||
| Comment by Brandon Black [ 23/Mar/13 ] | |||||||||||||||||||||||||||||||||||||||||||||
|
You're both right. I thought I had run these tests in 2.4.0 and seen the same but I must have been mistaken. I've just tried this in 2.4.0 and I can confirm its been fixed. | |||||||||||||||||||||||||||||||||||||||||||||
| Comment by Tad Marshall [ 23/Mar/13 ] | |||||||||||||||||||||||||||||||||||||||||||||
|
Randolph is exactly right that this is I can't reproduce the problem in the current master branch:
Can you double-check 2.4.0? | |||||||||||||||||||||||||||||||||||||||||||||
| Comment by Brandon Black [ 23/Mar/13 ] | |||||||||||||||||||||||||||||||||||||||||||||
|
My initial tests were done using a copy and paste from translated text in my browser, but here's the same tests and results using direct keyboard input in Mac OS X. I'm also dropping the entire database between test sets. We seem to struggle with international character sets in general. Kotoeri (Japanese):
Hangul (Korean):
Russian:
| |||||||||||||||||||||||||||||||||||||||||||||
| Comment by Randolph Tan [ 23/Mar/13 ] | |||||||||||||||||||||||||||||||||||||||||||||
|
Most operating systems have keyboard settings for configuring input methods for Asian characters. But if you don't want to bother with that you can simply copy and paste since it works. http://translate.google.com is perfect for this, just input and English word and copy and paste the translated text. | |||||||||||||||||||||||||||||||||||||||||||||
| Comment by Tad Marshall [ 23/Mar/13 ] | |||||||||||||||||||||||||||||||||||||||||||||
|
Which operating systems did you test this on? The ticket says "ALL". How did you generate the Japanese collection names (e.g. copy and paste from <name of> application, typed them in using hex Unicode codes, used Chinese keyboard Input Method Editor, other)? |