-
-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Possible undesired behavior when using query filters #49
Comments
Just a quick thought; a small check for if idx, ok := txn.columnAt(columnName); ok && idx.IsIndex() {
// ...
} |
Hello Mark, I've run into an error with using the package's When
In the case of a false boolean value in the map, I can't tell if this is truly a bug, but if it is, I feel like the best route for solving both our problems is to fix up the columnBool.Value method and then add your index check. Let me know what you think |
Hi, first of all I would like to apologize for the long time it took me to reply. The idea of treating boolean columns as indexes sounds right to me, however the behavior of I would have to dig a bit more into the column/bitmap library itself, but it seems to me that |
In the
With
/Without
/Union
functions it is not checked whether the passed columns are indexes, which might cause unexpected/undesired behavior if used with "normal" columns.Let's take the following example:
If I now start a query over the rows and only want to have the rows that have a value in this column, it works fine:
If the attribute for "jane" is set somewhere later in the program, this is of course picked up correctly using
With
. The problem is, however, that you can no longer get "jane" out of theWith
, because you can't "unset" columns.By the way, it is not even checked whether the column exists at all. In my opinion, this should cause a panic like it does in other places (e.g. the
*ReaderFor
functions).Now I have to ask myself if users should be able to pass any column (if so, there should be a
Unset(column string)
intxn
) or if only theWithValue
function should be used for normal columns (as I interpret it). In this case you should somehow check this withinTxn
, possibly via the owner orcolumn
, since this struct contains theIsIndex
function.The text was updated successfully, but these errors were encountered: