Hello Kasper,

To apply the change:

1. I modified the core (Operator and Filter classes (new methods
greaterThanOrEquals/lessThanOrEquals in FilterBuilder))
2. MongoDbDataContext

Now I'm working about CouchDB and reviewing other modules (dialects).

Do you want me to open a Jira request? How are you managing this kind of
changes? Do we need a new fork from master / new git branch from master?

Regards,


2014-09-19 13:01 GMT+02:00 Kasper Sørensen <[email protected]>:

> Hi Francisco,
>
> I imagine those are much easier to handle. Previously you posted a "recipe"
> which I think applies very well. Then a small review of MongoDB, CouchDB
> and maybe a few other modules might be needed. But all in all I think it
> sounds pretty easy.
>
> Testing-wise, it should be tested for the JdbcModule and some quick
> research on SQL dialects might be needed - but I think all dialects use the
> same notation (">=" and "<="... I hope not "=>" and "=<"). Give it a try
> and we will give you some feedback! :-)
>
> Kasper
>
> 2014-09-18 17:25 GMT+02:00 Francisco Javier Cano Bailen <
> [email protected]>
> :
>
> > Hello,
> >
> > Sorry, I wrote an unclear comment. I meant, BETWEEN will not implement
> > because you are right we have an ambiguous behavior among different DB.
> But
> > It will be useful if we include ">=" and "<=" operators.
> >
> > How could we manage the implementation of "<=" and ">=" operators in MM?
> >
> > Regards,
> >
> > 2014-09-18 17:06 GMT+02:00 Kasper Sørensen <
> [email protected]
> > >:
> >
> > > But how will you implement the BETWEEN logic for the JDBC module, when
> it
> > > is implemented ambigiuously in different databases. Rather I would
> maybe
> > > consider implementing only the ">=" and "<=" operators in MM. That way
> we
> > > stay clear from the ambiguity and anyways a user can simply make his
> > query
> > > in MM using "<=" and ">=".
> > >
> > > 2014-09-18 9:34 GMT+02:00 Francisco Javier Cano Bailen <
> > [email protected]
> > > >:
> > >
> > > > Hello,
> > > >
> > > > I agree with you. Perfect, it is OK for us.
> > > >
> > > > We will work in the way "BETWEEN" like "X >= V0 AND X <= V1".
> > > >
> > > > But in the other hand, what do you think about new "<=" and ">="
> > > operators?
> > > >
> > > > Regards,
> > > >
> > > > 2014-09-17 21:18 GMT+02:00 Kasper Sørensen <
> > > [email protected]
> > > > >:
> > > >
> > > > > I am still a bit unsure about the BETWEEN operator. Partly because
> > I've
> > > > > never used it in any database myself :-) But I was also reading a
> bit
> > > > about
> > > > > it [1] and found that it is implemented differently in different
> > > > databases
> > > > > with regard to whether it includes or excludes the boundary values.
> > For
> > > > > this reason I would actually prefer using 2x "greater/less than"
> > filter
> > > > > items instead of a single "between" filter item. Our queries should
> > > have
> > > > > the same meaning on all databases.
> > > > >
> > > > > Another little thing I found is that "NOT BETWEEN" is also an
> option.
> > > We
> > > > > might choose not to implement that, but just wanted to bring it to
> > the
> > > > > table. Sorry if I'm now just making it more complex :-P
> > > > >
> > > > > 2014-09-17 11:08 GMT+02:00 Francisco Javier Cano Bailen <
> > > > > [email protected]>
> > > > > :
> > > > >
> > > > > > Hello,
> > > > > >
> > > > > > I performed some test and my first idea is:
> > > > > >
> > > > > > Manage operator field for BETWEEN operand as an array/list with
> > size
> > > 2
> > > > (~
> > > > > > to IN).
> > > > > >
> > > > > > I have developed a skeleton and I'm fixing some tests.
> > > > > >
> > > > > > Do you have other ideas?
> > > > > >
> > > > > > Regards,
> > > > > >
> > > > > > 2014-09-16 12:59 GMT+02:00 Kasper Sørensen <
> > > > > [email protected]
> > > > > > >:
> > > > > >
> > > > > > > Hi Francisco,
> > > > > > >
> > > > > > > These sound like cool additions in deed. I think you're right
> > wrt.
> > > > > where
> > > > > > > the impact would be.
> > > > > > >
> > > > > > > Would also need to check other modules that does smart things
> > with
> > > > > query
> > > > > > > optimizations, but that comes second.
> > > > > > >
> > > > > > > Not sure how to fix the BETWEEN case since FilterItem only
> takes
> > > one
> > > > > > > operand. Any ideas?
> > > > > > > Den 16/09/2014 11.52 skrev "Francisco Javier Cano Bailen" <
> > > > > > > [email protected]>:
> > > > > > >
> > > > > > > > Hello,
> > > > > > > >
> > > > > > > > Thanks Kasper for your first support.
> > > > > > > >
> > > > > > > > Regarding the OperatorType, MetaModel provides:
> > > > > > > >
> > > > > > > > EQUALS_TO("="), DIFFERENT_FROM("<>"), LIKE("LIKE"),
> > > > > GREATER_THAN(">"),
> > > > > > > > LESS_THAN("<"), IN("IN"),
> > > > > > > >
> > > > > > > > If it is possible, I would like to implement "<=", ">="" and
> > > > > "BETWEEN"
> > > > > > > > operator types.
> > > > > > > >
> > > > > > > > From my first review and test, I'm going to write new code
> in:
> > > > > > > >
> > > > > > > > FilterItem.java
> > > > > > > > - toSql method
> > > > > > > > - comparator method
> > > > > > > > OperatorType.java
> > > > > > > > - new OperatorType <= , >= and BETWEEN
> > > > > > > > Query.java
> > > > > > > > - BETWEEN operator syntax is BETWEEN X AND Y => manage Y
> > operand
> > > > > > without
> > > > > > > > operator
> > > > > > > >
> > > > > > > > From your point of view, Do you have other ideas in mind?
> > > > > > > >
> > > > > > > > Regards,
> > > > > > > >
> > > > > > > > --
> > > > > > > >
> > > > > > > > Francisco Javier Cano
> > > > > > > > Senior Developer
> > > > > > > >
> > > > > > > >
> > > > > > > > <http://www.stratio.com/>
> > > > > > > > Avenida de Europa, 26. Ática 5. 3ª Planta
> > > > > > > > 28224 Pozuelo de Alarcón, Madrid
> > > > > > > > Tel: +34 91 352 59 42 // *@stratiobd <
> > > > https://twitter.com/StratioBD
> > > > > >*
> > > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > >
> > > > > > Francisco Javier Cano
> > > > > > Senior Developer
> > > > > >
> > > > > >
> > > > > > <http://www.stratio.com/>
> > > > > > Avenida de Europa, 26. Ática 5. 3ª Planta
> > > > > > 28224 Pozuelo de Alarcón, Madrid
> > > > > > Tel: +34 91 352 59 42 // *@stratiobd <
> > https://twitter.com/StratioBD
> > > >*
> > > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > >
> > > > Francisco Javier Cano
> > > > Senior Developer
> > > >
> > > >
> > > > <http://www.stratio.com/>
> > > > Avenida de Europa, 26. Ática 5. 3ª Planta
> > > > 28224 Pozuelo de Alarcón, Madrid
> > > > Tel: +34 91 352 59 42 // *@stratiobd <https://twitter.com/StratioBD
> >*
> > > >
> > >
> >
> >
> >
> > --
> >
> > Francisco Javier Cano
> > Senior Developer
> >
> >
> > <http://www.stratio.com/>
> > Avenida de Europa, 26. Ática 5. 3ª Planta
> > 28224 Pozuelo de Alarcón, Madrid
> > Tel: +34 91 352 59 42 // *@stratiobd <https://twitter.com/StratioBD>*
> >
>



-- 

Francisco Javier Cano
Senior Developer


<http://www.stratio.com/>
Avenida de Europa, 26. Ática 5. 3ª Planta
28224 Pozuelo de Alarcón, Madrid
Tel: +34 91 352 59 42 // *@stratiobd <https://twitter.com/StratioBD>*

Reply via email to