Looking at the EXPLAIN output, this fixes pushing the condition into the
resolved_groups view, so should help with the recent performance degradation
caused by upgrading Postgres. If it does, I'll roll this out more widely across
all the queries where I can.
Signed-off-by: Graham <gpe@openrs2.org>
I hope this might help with people who have problems with downloads failing
right at the end - my theory is that the transaction takes longer than the
current timeout to commit, and while it's committing there's no I/O going on to
keep the connection active.
Signed-off-by: Graham <gpe@openrs2.org>
This allows us to, for example, go from a client to its loader, or from a
worldmap.dat file to its mapview applet.
Signed-off-by: Graham <gpe@openrs2.org>
Older worldmap.dat files don't have a size.dat file. Look for labels.dat
instead, which is in both older and newer worldmap.dat files.
Signed-off-by: Graham <gpe@openrs2.org>
Depending on the order of the blobs table, the previous query would
sometimes propagate a NULL version even if another resource used by the
same loader had a version number.
Signed-off-by: Graham <gpe@openrs2.org>
There are some versions of the game where sw3d is stored outside of the
cache, so we need to support it in the client archiving code.
Signed-off-by: Graham <gpe@openrs2.org>
- It's now used for OSRS as well as NXT.
- We retain buildMinor if buildMajor == server_version, so we don't have
to keep retrying minor versions.
Signed-off-by: Graham <gpe@openrs2.org>
removeAll removes all instances of an item in the right list from the
left list, but we only want to remove a single instance.
Signed-off-by: Graham <gpe@openrs2.org>
This previously worked by chance with the PE32 executables we saw, but
it didn't work with the PE32+ executables we saw.
Signed-off-by: Graham <gpe@openrs2.org>
There are still some gaps but I want to get this committed and possibly
deployed before doing further work.
Remaining items include:
- Mach-O support
- New engine loader ArtifactLink support
- Post-668 client support
- FunOrb support
Signed-off-by: Graham <gpe@openrs2.org>
It's now used for both XTEA and ISAAC keys, and there's nothing
XTEA-specific about it so there's no need to duplicate it.
Signed-off-by: Graham <gpe@openrs2.org>