![]() ![]() But, there is no other way around for me at this point.Īlso, I have to be very careful accessing my database directly for search as I have to consider SQL injection issue. This is do-able, but this defeats the whole purpose of Prisma.not to access database directly. To cause a case-sensitive comparison of nonbinary strings to be case-insensitive, use COLLATE to name a case-insensitive collation. To get all the things in relationship to my item (before making WHERE query), I discovered that I have to make a complicated sql query (from my SQL novice point of view) using a series of 'LEFT JOIN' with all individual tables and mapping tables as organised by Prisma. However, I found that all the relationships are managed solely on mapping tables in database without any indexing in each object tables due to the prisma database structure. I am now trying to use rawAccess option (I am using Postgres for databse). It is not practical for me to create and manage duplicates of everything in lowercase in my case. I have many things related to my items I need to search case-insensitively - Items with Category, User, ProgressRecords and its Tally ,etc. Maybe I'll try a quick fix for the MySQL Connector and do some kind of lowercase->actual mapping.It has been more than 1 year since this thread was created but I see no clear solution from Prisma.Īs debianmaster said, it is very disappointing. But it baffles me why the decision was made to simply lowercase all schema/table names, thus ensuring that anything with mixed-case schema names would simply be incompatible with Presto.Īs to fixing the core issue.not sure I can/will. So I suppose a lot of the above is venting, sorry. I've also noticed at least a few tickets over the years where other connectors have had to had changes made to them in order to get around the lowercase everything method. It's very, very annoying not have a note of this behavior somewhere in the documentation so people are aware of it. In fact, I wouldn't trust myself, coming at this with no experience in this code base, to do a good job in that short of a time something that's so central (the metadata information) to the entire application. Which I doubt, in that time, I can properly go through and make a proper change throughout the entire Presto code base. As in I can take a week or two to throw together an internal application which will handle much, although certainly not all of our needs, and of course is far, far less than what Presto has but will mostly fulfill our immediate, short term needs. So, there's no reference as to why that decision was made or what purpose it was to solve for.Īll that said, yes I can go through and do a quick job of hacking out the lowercase checks and wherever lowercasing is done in the main presto code (ignoring connectors for the moment), but I'm certain that it will have far reaching consequences for which I can't know of or even know if any of the existing tests will catch. There doesn't appear to be any tickets that it's part of, or even any reference in the release notes for the release 0.181 that it's part of ( ). This seems to be something that goes all the way back to 2012 with commit LIKE in mysql is always case insensitive but for non ascii characters you must use the right charset and collation on your tables. While I do appreciate that philosophy, on the other hand Dain in both of those links expressed a longstanding desire to change it to allow for mixed case metadata names. Or one of ya'll prove me wrong in the next few days and fixes this or correctly documents how to make it work. I'm very, very sad about this, and seriously hope that one day in the future this will be fixed. So as of this time, much to my disappointment, I have to say Presto fails to meet almost any of our needs even though on paper it looks like it most definitely should (especially the cross-connector JOINs). Unless there's other discussions elsewhere that I haven't found. yet even after 2 years there seems to be absolutely NO motivation or effort, or even really caring whatsoever about this issue. I've found a few references such as !topic/presto-users/2tN7HWUb0LI/discussion and bringing up the issue. We have a few different MySQL instances/DBs that we want to use in conjunction with Hive via Presto, however we have been running lower_case_table_names=0 (see ), and Hibernate of course created the tables with camel-case names. ![]() I'm new to Presto and evaluating it's usefulness to us, but I'm running into a huge problem.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |