Evergreen ILS Website

IRC log for #evergreen, 2024-06-03

| Channels | #evergreen index | Today | | Search | Google Search | Plain-Text | summary | Join Webchat

All times shown according to the server's local time.

Time Nick Message
07:14 collum joined #evergreen
08:07 cbrown-isl joined #evergreen
08:09 BDorsey joined #evergreen
08:10 kworstell-isl joined #evergreen
08:49 Dyrcona joined #evergreen
09:20 csharp_ eeevil: highlighting this for you: https://bugs.launchpad.net/evergreen/+bug/2067905
09:20 pinesol Launchpad bug 2067905 in Evergreen "extra parameter added to container ID in search string causes error" [High,New]
09:20 csharp_ PINES had what amounted to a DoS over the weekend because Google crawlers were attempting bad searches over and over (details in bug report above)
09:32 dguarrac joined #evergreen
10:37 eeevil csharp_: the main problem is something upstream (something probably in the mod_perl layer, but maybe even higher in the templates) is sending extra url stuff to the search query by constructing a contaner() filter expression badly. GIGO
10:39 eeevil if you can connect that container id with a thread trace in the opensrf logs, you might be able to trace it back to the "bad" page that is the entry point for the naive search string builder
10:40 eeevil I suspect this is in the templates, because it feels very similar to the "sometimes our link builders use semicolon for some dumb reason" problem
10:46 eeevil re the QP-layer issue, there's nothing special (and no way, today, to say there is something special) about the container() filter in QP -- it's just a registered filter keyword, the params are just like other filters at parse time, just a comma separated list.  if we added type checking to the parser, we could ... do something? maybe ignore bad params, maybe cast to int so we make a best guess. (we could blindly  do the latter now, I suppose, but it
10:46 eeevil doesn't address the fact that something upstream is confused)
11:00 csharp_ eeevil: I agree that the QP layer is not the main issue, and I agree that it could do with some type checking, especially since the quoting function is already kinda looking
11:02 eeevil csharp_: just putting int() around the $cid, or adding 0 to it (0+$cid) should be enough to get you past the bad input
11:02 eeevil of course, then undef is an issue in the other direction :P
11:02 csharp_ yeah
11:08 csharp_ eeevil: I think I've tracked it to a PINES boopac customization
11:09 eeevil does it involve a ? getting url-encoded?
11:11 csharp_ https://pastebin.com/YsuK5YXV
11:39 eeevil ah, yeah, I'm pretty sure that mkurl expects to do all the construction, and you can't put ? in the first param to that.
11:41 eeevil berick might know off the top of his head, though?
11:46 berick ideally those params would be passed invididually to mkurl (inside the {}), but passing the params via the base URL string should also work
11:46 mantis1 joined #evergreen
11:48 mantis1 when testing action triggers/notices, what would it take for something to fall into 'invalid' status?
11:49 berick mantis1: the event def will have a validator
11:49 berick and its check(s) failed
11:50 berick e.g. hold ready for pickup notice, but the hold was canceled in the meantime
11:50 Dyrcona mantis1: The validator fails. Look at the event_definition and you can find the code somewhere under OpenILS/Application/Trigger/Validator.pm or OpenILS/Application/Trigger/Validator/*
11:51 Dyrcona The event definition validator field value corresponds to a subroutine name.
11:51 * Dyrcona is testing a custom db upgrade from 3.10.3 to main, and stuff keeps failing left and right.
11:51 mantis1 I'm trying to test a pre-overdue but it seems like it should have passed
11:51 mantis1 I checked out an item that would be due within the right time frame
11:51 mantis1 but I'm also trying out a new HTML format for it
11:52 Dyrcona What's the validator?
11:52 mantis1 CircIsOpen
11:56 Dyrcona Are there action_trigger.event_params entries specifying 'target_age_field' and 'min_target_age' for the event_definition?
11:57 Dyrcona if target_age_field is missing, the delay_field will be used instead.
11:58 Dyrcona if min_target_age is missing, it will fail to validate.
12:03 mantis1 the thing is it does work but in a testing environment, it's just coming up invalid
12:03 mantis1 not sure what the difference between this and production would be
12:03 Dyrcona action_trigger.filters in /openils/conf ?
12:05 mantis1 it's the same as production it looks like
12:06 mantis1 also in that table, we have max_delay_age and min_target_age
12:06 mantis1 in event_params
12:06 csharp_ berick: eeevil: thanks
12:06 csharp_ berick++ eeevil++
12:06 Dyrcona Does the action_triggers filter file still end in .example and there isn't on that doesn't?
12:07 Dyrcona I often forget to copy/rename the file, myself.
12:07 * csharp_ adds .example to the end of his name so he can be an example to others
12:07 Dyrcona mantis1: If it's not the filters file, check the timezone.
12:08 jihpringle joined #evergreen
12:08 Dyrcona csharp_.example++
12:09 Dyrcona Recent, 22.04 and 24.04, Ubuntu releases don't set the time zone during installation. It's UTC.
12:10 mantis1 ahhh ok
12:10 mantis1 Dyrcona++
12:11 mantis1 berick++
12:12 Dyrcona mantis1: if none of that turns out to be the issue, keep asking. I'll keep looking. :)
12:12 mantis1 sorry how do you check for timezone in the GUI?  I didn't see anything in the docs about it
12:13 Dyrcona I use timedatectl on the command line
12:14 mantis1 looks like it's set right; EDT
12:14 mantis1 I also ran some tests with a notification from production on this server without any changes and it's also giving an invalid status
12:14 Dyrcona OK. It's under Settings -> "Date & Time" in the GUI.
12:15 Dyrcona There are some warnings you grep the logs for.
12:16 Dyrcona "'min_target_age' parameter required for MinPassiveTargetAge validator"
12:16 Dyrcona "'target_age_field' parameter or delay_field required for MinPassiveTargetAge validator"
12:16 Dyrcona It won't warn you if the date validation failed.
12:17 Dyrcona If it succeeds, CircIsOpen should log this as INFO: "AUTORENEW: CircIsOpen is TRUE!"
12:18 Dyrcona You could also try grepping for "open-is\\.trigger.* [ERR :" in the Evergreen logs.
12:19 Dyrcona Well this , actually: "open-ils\\.trigger.* [ERR :"
13:44 kworstell-isl joined #evergreen
13:44 mantis1 left #evergreen
14:22 Dyrcona snap--
15:22 kworstell_isl joined #evergreen
15:24 * Dyrcona just realized this afternoon that the Ubuntu 24.04 branch for Evergreen has not actually been started, yet.
15:26 kworstell_isl_ joined #evergreen
15:27 kworstell-isl joined #evergreen
15:36 kworstell-isl joined #evergreen

| Channels | #evergreen index | Today | | Search | Google Search | Plain-Text | summary | Join Webchat