orientdb: Method not working in select expressions

Hi , I have a serious problem with 2.1.9 . I guess there is a sql parsing bug in this release, that returns some missing in functionalities for example : select '1'.asLong() + 1 as newID from E returns nothing in GratefulDeadConcerts DB . or when i working on Link .include() method nothing returns . is there any idea ?

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 16 (16 by maintainers)

Commits related to this issue

Most upvoted comments

Hi @saeedtabrizi

I just pushed a fix for the method invocation issue. Now the following works fine:

select '1'.asLong() as newID from E 

The fix will be available in next 2.2.1

Thanks

Luigi

Yes. This is where I believe going “no sql” or rather schemaless wins out. If you you leave the schema at application level, you shouldn’t need to worry about schema at the database level. I know there are also pros and cons to this, but it is how we are planning to make the database per tenant infrastructure work. Also, our “core” system will have very little in the form of its own schema. The rest will be customer defined schema, and also a reason why we need the separation.

Scott

Hi @saeedtabrizi

There are two problems in this issue:

  • the “1”.asLong() that does not work
  • the 1 + 1 in projections, that is not supported in current release

I consider this issue related to the first one, for the second one I’m afraid you have to wait for next releases (it’s already tracked in the roadmap together with rewriting of the executor).

Thanks

Luigi

@smolinari Thanks for your guides and notes .

Saeed Tabrizi

Ok. I’ve also been looking at the possibilities with ODB and multi-tenancy and we will be going with dedicated databases for bigger customers. On the other hand, smaller customers and the sandboxes and demo environments will be using a hybrid system, where we’ll included multiple tenants per database. However, we will still be dedicating the classes to each customer, so sequences can be used. In other words, customer data will never “intermingle” with any other customer data in any single class.

Scott

It sounds like you are trying to create an auto-increment for the ids . Is this correct? If it is, is there a reason why you just don’t use a regular sequence?

http://orientdb.com/docs/2.2/Sequences-and-auto-increment.html

Scott