From Ian.Walls@med.nyu.edu Wed Feb 17 18:32:35 2010 From: "Walls, Ian" To: koha-devel@lists.koha-community.org Subject: [Koha-devel] Koha sessions table is ridiculously huge Date: Wed, 17 Feb 2010 12:32:21 -0500 Message-ID: <543F9234BDD8434A8D45C3D6337B7C8EB15569FA@MSGWSDCPMB07.nyumc.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============7196700815825182758==" --===============7196700815825182758== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Developers, After performing a software upgrade and server reboot, I came across this pro= blem. My koha.sessions table is over 13 million entries. This seems to indi= cate that entries into the table were never removed, and that may help to exp= lain why my backup mysqldumps are increasing by around 4MB daily. Chris Cormack suggested that I do a mysqldump of sessions with the no-data op= tion set, then reimport it into the database to clear it out. I've finally g= otten sessions to tell me what indexes it has on it, so that can be recreated= as well. Are there any risks to doing this that I'm not factoring in? More generally, what could be causing my sessions table to get so out of hand= ? Permissions, perhaps? Something in the code being off? Any ideas or feedback would be appreciated. Thanks! Ian Walls Systems Integration Librarian NYU Health Sciences Libraries 550 First Ave., New York, NY 10016 (212) 263-8687 ------------------------------------------------------------
This email message, including any attachments, is for the sole use of the int= ended recipient(s) and may contain information that is proprietary, confident= ial, and exempt from disclosure under applicable law. Any unauthorized review= , use, disclosure, or distribution is prohibited. If you have received this e= mail in error please notify the sender by return email and delete the origina= l message. Please note, the recipient should check this email and any attachm= ents for the presence of viruses. The organization accepts no liability for a= ny damage caused by any virus transmitted by this email.
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D



--===============7196700815825182758==
Content-Type: text/html
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="attachment.html"
MIME-Version: 1.0

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6eD0idXJuOnNjaGVtYXMtbWljcm9z
b2Z0LWNvbTpvZmZpY2U6ZXhjZWwiIHhtbG5zOnA9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206
b2ZmaWNlOnBvd2VycG9pbnQiIHhtbG5zOmE9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2Zm
aWNlOmFjY2VzcyIgeG1sbnM6ZHQ9InV1aWQ6QzJGNDEwMTAtNjVCMy0xMWQxLUEyOUYtMDBBQTAw
QzE0ODgyIiB4bWxuczpzPSJ1dWlkOkJEQzZFM0YwLTZEQTMtMTFkMS1BMkEzLTAwQUEwMEMxNDg4
MiIgeG1sbnM6cnM9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206cm93c2V0IiB4bWxuczp6PSIj
Um93c2V0U2NoZW1hIiB4bWxuczpiPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpw
dWJsaXNoZXIiIHhtbG5zOnNzPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpzcHJl
YWRzaGVldCIgeG1sbnM6Yz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6Y29tcG9u
ZW50OnNwcmVhZHNoZWV0IiB4bWxuczpvZGM9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2Zm
aWNlOm9kYyIgeG1sbnM6b2E9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOmFjdGl2
YXRpb24iIHhtbG5zOmh0bWw9Imh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy1odG1sNDAiIHhtbG5z
OnE9Imh0dHA6Ly9zY2hlbWFzLnhtbHNvYXAub3JnL3NvYXAvZW52ZWxvcGUvIiB4bWxuczpydGM9
Imh0dHA6Ly9taWNyb3NvZnQuY29tL29mZmljZW5ldC9jb25mZXJlbmNpbmciIHhtbG5zOkQ9IkRB
VjoiIHhtbG5zOlJlcGw9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vcmVwbC8iIHhtbG5z
Om10PSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3NoYXJlcG9pbnQvc29hcC9tZWV0aW5n
cy8iIHhtbG5zOngyPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS9leGNlbC8y
MDAzL3htbCIgeG1sbnM6cHBkYT0iaHR0cDovL3d3dy5wYXNzcG9ydC5jb20vTmFtZVNwYWNlLnhz
ZCIgeG1sbnM6b2lzPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3NoYXJlcG9pbnQvc29h
cC9vaXMvIiB4bWxuczpkaXI9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vc2hhcmVwb2lu
dC9zb2FwL2RpcmVjdG9yeS8iIHhtbG5zOmRzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwLzA5L3ht
bGRzaWcjIiB4bWxuczpkc3A9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vc2hhcmVwb2lu
dC9kc3AiIHhtbG5zOnVkYz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kYXRhL3VkYyIg
eG1sbnM6eHNkPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSIgeG1sbnM6c3ViPSJo
dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3NoYXJlcG9pbnQvc29hcC8yMDAyLzEvYWxlcnRz
LyIgeG1sbnM6ZWM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvMDQveG1sZW5jIyIgeG1sbnM6c3A9
Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vc2hhcmVwb2ludC8iIHhtbG5zOnNwcz0iaHR0
cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9zaGFyZXBvaW50L3NvYXAvIiB4bWxuczp4c2k9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp1ZGNzPSJodHRw
Oi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RhdGEvdWRjL3NvYXAiIHhtbG5zOnVkY3hmPSJodHRw
Oi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RhdGEvdWRjL3htbGZpbGUiIHhtbG5zOnVkY3AycD0i
aHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kYXRhL3VkYy9wYXJ0dG9wYXJ0IiB4bWxuczp3
Zj0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9zaGFyZXBvaW50L3NvYXAvd29ya2Zsb3cv
IiB4bWxuczpkc3NzPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA2L2Rp
Z3NpZy1zZXR1cCIgeG1sbnM6ZHNzaT0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9vZmZp
Y2UvMjAwNi9kaWdzaWciIHhtbG5zOm1kc3NpPSJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0
cy5vcmcvcGFja2FnZS8yMDA2L2RpZ2l0YWwtc2lnbmF0dXJlIiB4bWxuczptdmVyPSJodHRwOi8v
c2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvbWFya3VwLWNvbXBhdGliaWxpdHkvMjAwNiIgeG1s
bnM6bT0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4
bWxuczptcmVscz0iaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL3BhY2thZ2UvMjAw
Ni9yZWxhdGlvbnNoaXBzIiB4bWxuczpzcHdwPSJodHRwOi8vbWljcm9zb2Z0LmNvbS9zaGFyZXBv
aW50L3dlYnBhcnRwYWdlcyIgeG1sbnM6ZXgxMnQ9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5j
b20vZXhjaGFuZ2Uvc2VydmljZXMvMjAwNi90eXBlcyIgeG1sbnM6ZXgxMm09Imh0dHA6Ly9zY2hl
bWFzLm1pY3Jvc29mdC5jb20vZXhjaGFuZ2Uvc2VydmljZXMvMjAwNi9tZXNzYWdlcyIgeG1sbnM6
cHB0c2w9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vc2hhcmVwb2ludC9zb2FwL1NsaWRl
TGlicmFyeS8iIHhtbG5zOnNwc2w9Imh0dHA6Ly9taWNyb3NvZnQuY29tL3dlYnNlcnZpY2VzL1No
YXJlUG9pbnRQb3J0YWxTZXJ2ZXIvUHVibGlzaGVkTGlua3NTZXJ2aWNlIiB4bWxuczpaPSJ1cm46
c2NoZW1hcy1taWNyb3NvZnQtY29tOiIgeG1sbnM6c3Q9IiYjMTsiIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4KCjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PUNvbnRlbnQt
VHlwZSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXMtYXNjaWkiPgo8bWV0YSBuYW1lPUdl
bmVyYXRvciBjb250ZW50PSJNaWNyb3NvZnQgV29yZCAxMiAoZmlsdGVyZWQgbWVkaXVtKSI+Cjxz
dHlsZT4KPCEtLQogLyogRm9udCBEZWZpbml0aW9ucyAqLwogQGZvbnQtZmFjZQoJe2ZvbnQtZmFt
aWx5OkNhbGlicmk7CglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDt9CiAvKiBTdHlsZSBE
ZWZpbml0aW9ucyAqLwogcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1hbAoJ
e21hcmdpbjowaW47CgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7Cglmb250LXNpemU6MTEuMHB0OwoJ
Zm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjt9CmE6bGluaywgc3Bhbi5Nc29IeXBl
cmxpbmsKCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7Cgljb2xvcjpibHVlOwoJdGV4dC1kZWNvcmF0
aW9uOnVuZGVybGluZTt9CmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZAoJe21z
by1zdHlsZS1wcmlvcml0eTo5OTsKCWNvbG9yOnB1cnBsZTsKCXRleHQtZGVjb3JhdGlvbjp1bmRl
cmxpbmU7fQpzcGFuLkVtYWlsU3R5bGUxNwoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsLWNvbXBv
c2U7Cglmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOwoJY29sb3I6d2luZG93dGV4
dDt9Ci5Nc29DaHBEZWZhdWx0Cgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7fQpAcGFnZSBT
ZWN0aW9uMQoJe3NpemU6OC41aW4gMTEuMGluOwoJbWFyZ2luOjEuMGluIDEuMGluIDEuMGluIDEu
MGluO30KZGl2LlNlY3Rpb24xCgl7cGFnZTpTZWN0aW9uMTt9Ci0tPgo8L3N0eWxlPgo8IS0tW2lm
IGd0ZSBtc28gOV0+PHhtbD4KIDxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9
IjEwMjYiIC8+CjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgogPG86
c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPgogIDxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIx
IiAvPgogPC9vOnNoYXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPgo8L2hlYWQ+Cgo8Ym9keSBs
YW5nPUVOLVVTIGxpbms9Ymx1ZSB2bGluaz1wdXJwbGU+Cgo8ZGl2IGNsYXNzPVNlY3Rpb24xPgoK
PHAgY2xhc3M9TXNvTm9ybWFsPkRldmVsb3BlcnMsPG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1N
c29Ob3JtYWw+PG86cD4mbmJzcDs8L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PG86cD4m
bmJzcDs8L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+QWZ0ZXIgcGVyZm9ybWluZyBhIHNv
ZnR3YXJlIHVwZ3JhZGUgYW5kIHNlcnZlciByZWJvb3QsIEkKY2FtZSBhY3Jvc3MgdGhpcyBwcm9i
bGVtLiZuYnNwOyBNeSBrb2hhLnNlc3Npb25zIHRhYmxlIGlzIG92ZXIgMTMgbWlsbGlvbgplbnRy
aWVzLiZuYnNwOyBUaGlzIHNlZW1zIHRvIGluZGljYXRlIHRoYXQgZW50cmllcyBpbnRvIHRoZSB0
YWJsZSB3ZXJlIG5ldmVyCnJlbW92ZWQsIGFuZCB0aGF0IG1heSBoZWxwIHRvIGV4cGxhaW4gd2h5
IG15IGJhY2t1cCBteXNxbGR1bXBzIGFyZSBpbmNyZWFzaW5nCmJ5IGFyb3VuZCA0TUIgZGFpbHku
PG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PG86cD4mbmJzcDs8L286cD48L3A+
Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+Q2hyaXMgQ29ybWFjayBzdWdnZXN0ZWQgdGhhdCBJIGRvIGEg
bXlzcWxkdW1wIG9mIHNlc3Npb25zCndpdGggdGhlIG5vLWRhdGEgb3B0aW9uIHNldCwgdGhlbiBy
ZWltcG9ydCBpdCBpbnRvIHRoZSBkYXRhYmFzZSB0byBjbGVhciBpdApvdXQuJm5ic3A7IEkmIzgy
MTc7dmUgZmluYWxseSBnb3R0ZW4gc2Vzc2lvbnMgdG8gdGVsbCBtZSB3aGF0IGluZGV4ZXMgaXQg
aGFzIG9uCml0LCBzbyB0aGF0IGNhbiBiZSByZWNyZWF0ZWQgYXMgd2VsbC4mbmJzcDsgQXJlIHRo
ZXJlIGFueSByaXNrcyB0byBkb2luZyB0aGlzCnRoYXQgSSYjODIxNzttIG5vdCBmYWN0b3Jpbmcg
aW4/PG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PG86cD4mbmJzcDs8L286cD48
L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+TW9yZSBnZW5lcmFsbHksIHdoYXQgY291bGQgYmUgY2F1
c2luZyBteSBzZXNzaW9ucyB0YWJsZSB0bwpnZXQgc28gb3V0IG9mIGhhbmQ/Jm5ic3A7IFBlcm1p
c3Npb25zLCBwZXJoYXBzPyZuYnNwOyBTb21ldGhpbmcgaW4gdGhlIGNvZGUKYmVpbmcgb2ZmPzxv
OnA+PC9vOnA+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPgoK
PHAgY2xhc3M9TXNvTm9ybWFsPkFueSBpZGVhcyBvciBmZWVkYmFjayB3b3VsZCBiZSBhcHByZWNp
YXRlZC4mbmJzcDsgVGhhbmtzITxvOnA+PC9vOnA+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPjxv
OnA+Jm5ic3A7PC9vOnA+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPjxvOnA+Jm5ic3A7PC9vOnA+
PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPgoKPHAgY2xhc3M9
TXNvTm9ybWFsPklhbiBXYWxsczxvOnA+PC9vOnA+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPlN5
c3RlbXMgSW50ZWdyYXRpb24gTGlicmFyaWFuPG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29O
b3JtYWw+TllVIEhlYWx0aCBTY2llbmNlcyBMaWJyYXJpZXM8bzpwPjwvbzpwPjwvcD4KCjxwIGNs
YXNzPU1zb05vcm1hbD41NTAgRmlyc3QgQXZlLiwgTmV3IFlvcmssIE5ZIDEwMDE2PG86cD48L286
cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+KDIxMikgMjYzLTg2ODc8bzpwPjwvbzpwPjwvcD4K
CjxwIGNsYXNzPU1zb05vcm1hbD48bzpwPiZuYnNwOzwvbzpwPjwvcD4KCjxwIGNsYXNzPU1zb05v
cm1hbD48bzpwPiZuYnNwOzwvbzpwPjwvcD4KCjwvZGl2PgoKPHByZT48L1BSRT4KPGh0bWw+Cjxi
b2R5PgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS08YnIgLz4KVGhpcyBlbWFpbCBtZXNzYWdlLCBpbmNsdWRpbmcgYW55IGF0dGFjaG1l
bnRzLCBpcyBmb3IgdGhlIHNvbGUgdXNlIG9mIHRoZSBpbnRlbmRlZCByZWNpcGllbnQocykgYW5k
IG1heSBjb250YWluIGluZm9ybWF0aW9uIHRoYXQgaXMgcHJvcHJpZXRhcnksIGNvbmZpZGVudGlh
bCwgYW5kIGV4ZW1wdCBmcm9tIGRpc2Nsb3N1cmUgdW5kZXIgYXBwbGljYWJsZSBsYXcuIEFueSB1
bmF1dGhvcml6ZWQgcmV2aWV3LCB1c2UsIGRpc2Nsb3N1cmUsIG9yIGRpc3RyaWJ1dGlvbiBpcyBw
cm9oaWJpdGVkLiBJZiB5b3UgaGF2ZSByZWNlaXZlZCB0aGlzIGVtYWlsIGluIGVycm9yIHBsZWFz
ZSBub3RpZnkgdGhlIHNlbmRlciBieSByZXR1cm4gZW1haWwgYW5kIGRlbGV0ZSB0aGUgb3JpZ2lu
YWwgbWVzc2FnZS4gUGxlYXNlIG5vdGUsIHRoZSByZWNpcGllbnQgc2hvdWxkIGNoZWNrIHRoaXMg
ZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBmb3IgdGhlIHByZXNlbmNlIG9mIHZpcnVzZXMuIFRo
ZSBvcmdhbml6YXRpb24gYWNjZXB0cyBubyBsaWFiaWxpdHkgZm9yIGFueSBkYW1hZ2UgY2F1c2Vk
IGJ5IGFueSB2aXJ1cyB0cmFuc21pdHRlZCBieSB0aGlzIGVtYWlsLjxiciAvPgo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KPC9ib2R5Pgo8L2h0bWw+CjxQUkU+CjwvcHJlPjwvYm9k
eT4KCjwvaHRtbD4K

--===============7196700815825182758==--


From clay.fouts@liblime.com Wed Feb 17 20:04:50 2010
From: Clay Fouts 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Wed, 17 Feb 2010 11:04:22 -0800
Message-ID: <192a1aab1002171104q6e069eb5h4a05d29eea9594b2@mail.gmail.com>
In-Reply-To: <543F9234BDD8434A8D45C3D6337B7C8EB15569FA@MSGWSDCPMB07.nyumc.org>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============7985034433757307382=="

--===============7985034433757307382==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

You can also use "truncate sessions" to do the job if you just want to clear
out the contents of the table. It's faster and simpler than using mysqldump.

This issue arises from the fact that the way Koha is written, if a user just
walks away from a session without logging out, their session data will hang
out in the the sessions table forever. A proper solution would involve
adding a timestamp column to the sessions table, enabling one to cull only
expired sessions entirely within SQL statements. With the current schema,
you'd have to parse the contents of each row within a user program, then
cull based on the expiry contained within the session data itself.

Cheers,
Clay


2010/2/17 Walls, Ian 

>  Developers,
>
>
>
>
>
> After performing a software upgrade and server reboot, I came across this
> problem.  My koha.sessions table is over 13 million entries.  This seems to
> indicate that entries into the table were never removed, and that may help
> to explain why my backup mysqldumps are increasing by around 4MB daily.
>
>
>
> Chris Cormack suggested that I do a mysqldump of sessions with the no-data
> option set, then reimport it into the database to clear it out.  I=E2=80=99=
ve
> finally gotten sessions to tell me what indexes it has on it, so that can be
> recreated as well.  Are there any risks to doing this that I=E2=80=99m not =
factoring
> in?
>
>
>
> More generally, what could be causing my sessions table to get so out of
> hand?  Permissions, perhaps?  Something in the code being off?
>
>
>
> Any ideas or feedback would be appreciated.  Thanks!
>
>
>
>
>
>
>
> Ian Walls
>
> Systems Integration Librarian
>
> NYU Health Sciences Libraries
>
> 550 First Ave., New York, NY 10016
>
> (212) 263-8687
>
>
>
>
>
>  ------------------------------------------------------------
> This email message, including any attachments, is for the sole use of the
> intended recipient(s) and may contain information that is proprietary,
> confidential, and exempt from disclosure under applicable law. Any
> unauthorized review, use, disclosure, or distribution is prohibited. If you
> have received this email in error please notify the sender by return email
> and delete the original message. Please note, the recipient should check
> this email and any attachments for the presence of viruses. The organization
> accepts no liability for any damage caused by any virus transmitted by this
> email.
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D
>
>
> _______________________________________________
> Koha-devel mailing list
> Koha-devel@lists.koha.org
> http://lists.koha.org/mailman/listinfo/koha-devel
>



--===============7985034433757307382==
Content-Type: text/html
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="attachment.html"
MIME-Version: 1.0

WW91IGNhbiBhbHNvIHVzZSAmcXVvdDt0cnVuY2F0ZSBzZXNzaW9ucyZxdW90OyB0byBkbyB0aGUg
am9iIGlmIHlvdSBqdXN0IHdhbnQgdG8gY2xlYXIgb3V0IHRoZSBjb250ZW50cyBvZiB0aGUgdGFi
bGUuIEl0JiMzOTtzIGZhc3RlciBhbmQgc2ltcGxlciB0aGFuIHVzaW5nIG15c3FsZHVtcC48YnI+
PGJyPjxkaXY+VGhpcyBpc3N1ZSBhcmlzZXMgZnJvbSB0aGUgZmFjdCB0aGF0IHRoZSB3YXkgS29o
YSBpcyB3cml0dGVuLCBpZiBhIHVzZXIganVzdCB3YWxrcyBhd2F5IGZyb20gYSBzZXNzaW9uIHdp
dGhvdXQgbG9nZ2luZyBvdXQsIHRoZWlyIHNlc3Npb24gZGF0YSB3aWxsIGhhbmcgb3V0IGluIHRo
ZSB0aGUgc2Vzc2lvbnMgdGFibGUgZm9yZXZlci6gQSBwcm9wZXIgc29sdXRpb24gd291bGQgaW52
b2x2ZSBhZGRpbmcgYSB0aW1lc3RhbXAgY29sdW1uIHRvIHRoZSBzZXNzaW9ucyB0YWJsZSwgZW5h
Ymxpbmcgb25lIHRvIGN1bGwgb25seSBleHBpcmVkIHNlc3Npb25zIGVudGlyZWx5IHdpdGhpbiBT
UUwgc3RhdGVtZW50cy4gV2l0aCB0aGUgY3VycmVudCBzY2hlbWEsIHlvdSYjMzk7ZCBoYXZlIHRv
IHBhcnNlIHRoZSBjb250ZW50cyBvZiBlYWNoIHJvdyB3aXRoaW4gYSB1c2VyIHByb2dyYW0sIHRo
ZW4gY3VsbCBiYXNlZCBvbiB0aGUgZXhwaXJ5IGNvbnRhaW5lZCB3aXRoaW4gdGhlIHNlc3Npb24g
ZGF0YSBpdHNlbGYuPC9kaXY+Cgo8ZGl2Pjxicj48L2Rpdj48ZGl2PkNoZWVycyw8L2Rpdj48ZGl2
PkNsYXk8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PjxkaXY+PGJyPjxkaXYgY2xhc3M9ImdtYWls
X3F1b3RlIj4yMDEwLzIvMTcgV2FsbHMsIElhbiA8c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9
Im1haWx0bzpJYW4uV2FsbHNAbWVkLm55dS5lZHUiPklhbi5XYWxsc0BtZWQubnl1LmVkdTwvYT4m
Z3Q7PC9zcGFuPjxicj4KCjxibG9ja3F1b3RlIGNsYXNzPSJnbWFpbF9xdW90ZSIgc3R5bGU9Im1h
cmdpbjowIDAgMCAuOGV4O2JvcmRlci1sZWZ0OjFweCAjY2NjIHNvbGlkO3BhZGRpbmctbGVmdDox
ZXg7Ij4KCgoKCgoKCgo8ZGl2IGxhbmc9IkVOLVVTIiBsaW5rPSJibHVlIiB2bGluaz0icHVycGxl
Ij4KCjxkaXY+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5EZXZlbG9wZXJzLDwvcD4KCjxwIGNsYXNz
PSJNc29Ob3JtYWwiPqA8L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj6gPC9wPgoKPHAgY2xhc3M9
Ik1zb05vcm1hbCI+QWZ0ZXIgcGVyZm9ybWluZyBhIHNvZnR3YXJlIHVwZ3JhZGUgYW5kIHNlcnZl
ciByZWJvb3QsIEkKY2FtZSBhY3Jvc3MgdGhpcyBwcm9ibGVtLqAgTXkga29oYS5zZXNzaW9ucyB0
YWJsZSBpcyBvdmVyIDEzIG1pbGxpb24KZW50cmllcy6gIFRoaXMgc2VlbXMgdG8gaW5kaWNhdGUg
dGhhdCBlbnRyaWVzIGludG8gdGhlIHRhYmxlIHdlcmUgbmV2ZXIKcmVtb3ZlZCwgYW5kIHRoYXQg
bWF5IGhlbHAgdG8gZXhwbGFpbiB3aHkgbXkgYmFja3VwIG15c3FsZHVtcHMgYXJlIGluY3JlYXNp
bmcKYnkgYXJvdW5kIDRNQiBkYWlseS48L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj6gPC9wPgoK
PHAgY2xhc3M9Ik1zb05vcm1hbCI+Q2hyaXMgQ29ybWFjayBzdWdnZXN0ZWQgdGhhdCBJIGRvIGEg
bXlzcWxkdW1wIG9mIHNlc3Npb25zCndpdGggdGhlIG5vLWRhdGEgb3B0aW9uIHNldCwgdGhlbiBy
ZWltcG9ydCBpdCBpbnRvIHRoZSBkYXRhYmFzZSB0byBjbGVhciBpdApvdXQuoCBJknZlIGZpbmFs
bHkgZ290dGVuIHNlc3Npb25zIHRvIHRlbGwgbWUgd2hhdCBpbmRleGVzIGl0IGhhcyBvbgppdCwg
c28gdGhhdCBjYW4gYmUgcmVjcmVhdGVkIGFzIHdlbGwuoCBBcmUgdGhlcmUgYW55IHJpc2tzIHRv
IGRvaW5nIHRoaXMKdGhhdCBJkm0gbm90IGZhY3RvcmluZyBpbj88L3A+Cgo8cCBjbGFzcz0iTXNv
Tm9ybWFsIj6gPC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+TW9yZSBnZW5lcmFsbHksIHdoYXQg
Y291bGQgYmUgY2F1c2luZyBteSBzZXNzaW9ucyB0YWJsZSB0bwpnZXQgc28gb3V0IG9mIGhhbmQ/
oCBQZXJtaXNzaW9ucywgcGVyaGFwcz+gIFNvbWV0aGluZyBpbiB0aGUgY29kZQpiZWluZyBvZmY/
PC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+oDwvcD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFu
eSBpZGVhcyBvciBmZWVkYmFjayB3b3VsZCBiZSBhcHByZWNpYXRlZC6gIFRoYW5rcyE8L3A+Cgo8
cCBjbGFzcz0iTXNvTm9ybWFsIj6gPC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+oDwvcD4KCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPqA8L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JYW4gV2FsbHM8
L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5TeXN0ZW1zIEludGVncmF0aW9uIExpYnJhcmlhbjwv
cD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk5ZVSBIZWFsdGggU2NpZW5jZXMgTGlicmFyaWVzPC9w
PgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+NTUwIEZpcnN0IEF2ZS4sIE5ldyBZb3JrLCBOWSAxMDAx
NjwvcD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPigyMTIpIDI2My04Njg3PC9wPgoKPHAgY2xhc3M9
Ik1zb05vcm1hbCI+oDwvcD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPqA8L3A+Cgo8L2Rpdj4KCjxw
cmU+PC9wcmU+Cgo8ZGl2PgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS08YnI+ClRoaXMgZW1haWwgbWVzc2FnZSwgaW5jbHVkaW5nIGFu
eSBhdHRhY2htZW50cywgaXMgZm9yIHRoZSBzb2xlIHVzZSBvZiB0aGUgaW50ZW5kZWQgcmVjaXBp
ZW50KHMpIGFuZCBtYXkgY29udGFpbiBpbmZvcm1hdGlvbiB0aGF0IGlzIHByb3ByaWV0YXJ5LCBj
b25maWRlbnRpYWwsIGFuZCBleGVtcHQgZnJvbSBkaXNjbG9zdXJlIHVuZGVyIGFwcGxpY2FibGUg
bGF3LiBBbnkgdW5hdXRob3JpemVkIHJldmlldywgdXNlLCBkaXNjbG9zdXJlLCBvciBkaXN0cmli
dXRpb24gaXMgcHJvaGliaXRlZC4gSWYgeW91IGhhdmUgcmVjZWl2ZWQgdGhpcyBlbWFpbCBpbiBl
cnJvciBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgYnkgcmV0dXJuIGVtYWlsIGFuZCBkZWxldGUg
dGhlIG9yaWdpbmFsIG1lc3NhZ2UuIFBsZWFzZSBub3RlLCB0aGUgcmVjaXBpZW50IHNob3VsZCBj
aGVjayB0aGlzIGVtYWlsIGFuZCBhbnkgYXR0YWNobWVudHMgZm9yIHRoZSBwcmVzZW5jZSBvZiB2
aXJ1c2VzLiBUaGUgb3JnYW5pemF0aW9uIGFjY2VwdHMgbm8gbGlhYmlsaXR5IGZvciBhbnkgZGFt
YWdlIGNhdXNlZCBieSBhbnkgdmlydXMgdHJhbnNtaXR0ZWQgYnkgdGhpcyBlbWFpbC48YnI+CgoK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CjwvZGl2PgoKPHByZT48L3ByZT48L2Rp
dj4KCgo8YnI+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188
YnI+CktvaGEtZGV2ZWwgbWFpbGluZyBsaXN0PGJyPgo8YSBocmVmPSJtYWlsdG86S29oYS1kZXZl
bEBsaXN0cy5rb2hhLm9yZyI+S29oYS1kZXZlbEBsaXN0cy5rb2hhLm9yZzwvYT48YnI+CjxhIGhy
ZWY9Imh0dHA6Ly9saXN0cy5rb2hhLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2tvaGEtZGV2ZWwiIHRh
cmdldD0iX2JsYW5rIj5odHRwOi8vbGlzdHMua29oYS5vcmcvbWFpbG1hbi9saXN0aW5mby9rb2hh
LWRldmVsPC9hPjxicj48L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjwvZGl2PjwvZGl2Pgo=

--===============7985034433757307382==--


From Ian.Walls@med.nyu.edu Wed Feb 17 20:14:29 2010
From: "Walls, Ian" 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Wed, 17 Feb 2010 14:14:18 -0500
Message-ID: <543F9234BDD8434A8D45C3D6337B7C8EB15569FD@MSGWSDCPMB07.nyumc.org>
In-Reply-To: <192a1aab1002171104q6e069eb5h4a05d29eea9594b2@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============8640295916317627358=="

--===============8640295916317627358==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Clay,


Thanks!  That sounds like an easy enough enhancement to make.  I'll make it a=
 point to keep an eye on the sessions table until then, and remind my coworke=
rs to logout properly.

Cheers,


-Ian

From: koha-devel-bounces@lists.koha.org [mailto:koha-devel-bounces@lists.koha=
.org] On Behalf Of Clay Fouts
Sent: Wednesday, February 17, 2010 2:04 PM
To: Koha-devel
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge

You can also use "truncate sessions" to do the job if you just want to clear =
out the contents of the table. It's faster and simpler than using mysqldump.
This issue arises from the fact that the way Koha is written, if a user just =
walks away from a session without logging out, their session data will hang o=
ut in the the sessions table forever. A proper solution would involve adding =
a timestamp column to the sessions table, enabling one to cull only expired s=
essions entirely within SQL statements. With the current schema, you'd have t=
o parse the contents of each row within a user program, then cull based on th=
e expiry contained within the session data itself.

Cheers,
Clay


2010/2/17 Walls, Ian >
Developers,


After performing a software upgrade and server reboot, I came across this pro=
blem.  My koha.sessions table is over 13 million entries.  This seems to indi=
cate that entries into the table were never removed, and that may help to exp=
lain why my backup mysqldumps are increasing by around 4MB daily.

Chris Cormack suggested that I do a mysqldump of sessions with the no-data op=
tion set, then reimport it into the database to clear it out.  I've finally g=
otten sessions to tell me what indexes it has on it, so that can be recreated=
 as well.  Are there any risks to doing this that I'm not factoring in?

More generally, what could be causing my sessions table to get so out of hand=
?  Permissions, perhaps?  Something in the code being off?

Any ideas or feedback would be appreciated.  Thanks!



Ian Walls
Systems Integration Librarian
NYU Health Sciences Libraries
550 First Ave., New York, NY 10016
(212) 263-8687


------------------------------------------------------------
This email message, including any attachments, is for the sole use of the int=
ended recipient(s) and may contain information that is proprietary, confident=
ial, and exempt from disclosure under applicable law. Any unauthorized review=
, use, disclosure, or distribution is prohibited. If you have received this e=
mail in error please notify the sender by return email and delete the origina=
l message. Please note, the recipient should check this email and any attachm=
ents for the presence of viruses. The organization accepts no liability for a=
ny damage caused by any virus transmitted by this email.
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D

_______________________________________________
Koha-devel mailing list
Koha-devel@lists.koha.org
http://lists.koha.org/mailman/listinfo/koha-devel

------------------------------------------------------------
This email message, including any attachments, is for the sole use of the int= ended recipient(s) and may contain information that is proprietary, confident= ial, and exempt from disclosure under applicable law. Any unauthorized review= , use, disclosure, or distribution is prohibited. If you have received this e= mail in error please notify the sender by return email and delete the origina= l message. Please note, the recipient should check this email and any attachm= ents for the presence of viruses. The organization accepts no liability for a= ny damage caused by any virus transmitted by this email.
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D



--===============8640295916317627358==
Content-Type: text/html
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="attachment.html"
MIME-Version: 1.0

PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy
bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt
YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6eD0idXJuOnNjaGVtYXMtbWljcm9z
b2Z0LWNvbTpvZmZpY2U6ZXhjZWwiIHhtbG5zOnA9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206
b2ZmaWNlOnBvd2VycG9pbnQiIHhtbG5zOmE9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2Zm
aWNlOmFjY2VzcyIgeG1sbnM6ZHQ9InV1aWQ6QzJGNDEwMTAtNjVCMy0xMWQxLUEyOUYtMDBBQTAw
QzE0ODgyIiB4bWxuczpzPSJ1dWlkOkJEQzZFM0YwLTZEQTMtMTFkMS1BMkEzLTAwQUEwMEMxNDg4
MiIgeG1sbnM6cnM9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206cm93c2V0IiB4bWxuczp6PSIj
Um93c2V0U2NoZW1hIiB4bWxuczpiPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpw
dWJsaXNoZXIiIHhtbG5zOnNzPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpzcHJl
YWRzaGVldCIgeG1sbnM6Yz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6Y29tcG9u
ZW50OnNwcmVhZHNoZWV0IiB4bWxuczpvZGM9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2Zm
aWNlOm9kYyIgeG1sbnM6b2E9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOmFjdGl2
YXRpb24iIHhtbG5zOmh0bWw9Imh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy1odG1sNDAiIHhtbG5z
OnE9Imh0dHA6Ly9zY2hlbWFzLnhtbHNvYXAub3JnL3NvYXAvZW52ZWxvcGUvIiB4bWxuczpydGM9
Imh0dHA6Ly9taWNyb3NvZnQuY29tL29mZmljZW5ldC9jb25mZXJlbmNpbmciIHhtbG5zOkQ9IkRB
VjoiIHhtbG5zOlJlcGw9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vcmVwbC8iIHhtbG5z
Om10PSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3NoYXJlcG9pbnQvc29hcC9tZWV0aW5n
cy8iIHhtbG5zOngyPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS9leGNlbC8y
MDAzL3htbCIgeG1sbnM6cHBkYT0iaHR0cDovL3d3dy5wYXNzcG9ydC5jb20vTmFtZVNwYWNlLnhz
ZCIgeG1sbnM6b2lzPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3NoYXJlcG9pbnQvc29h
cC9vaXMvIiB4bWxuczpkaXI9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vc2hhcmVwb2lu
dC9zb2FwL2RpcmVjdG9yeS8iIHhtbG5zOmRzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwLzA5L3ht
bGRzaWcjIiB4bWxuczpkc3A9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vc2hhcmVwb2lu
dC9kc3AiIHhtbG5zOnVkYz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kYXRhL3VkYyIg
eG1sbnM6eHNkPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSIgeG1sbnM6c3ViPSJo
dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3NoYXJlcG9pbnQvc29hcC8yMDAyLzEvYWxlcnRz
LyIgeG1sbnM6ZWM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvMDQveG1sZW5jIyIgeG1sbnM6c3A9
Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vc2hhcmVwb2ludC8iIHhtbG5zOnNwcz0iaHR0
cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9zaGFyZXBvaW50L3NvYXAvIiB4bWxuczp4c2k9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczp1ZGNzPSJodHRw
Oi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RhdGEvdWRjL3NvYXAiIHhtbG5zOnVkY3hmPSJodHRw
Oi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RhdGEvdWRjL3htbGZpbGUiIHhtbG5zOnVkY3AycD0i
aHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kYXRhL3VkYy9wYXJ0dG9wYXJ0IiB4bWxuczp3
Zj0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9zaGFyZXBvaW50L3NvYXAvd29ya2Zsb3cv
IiB4bWxuczpkc3NzPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA2L2Rp
Z3NpZy1zZXR1cCIgeG1sbnM6ZHNzaT0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9vZmZp
Y2UvMjAwNi9kaWdzaWciIHhtbG5zOm1kc3NpPSJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0
cy5vcmcvcGFja2FnZS8yMDA2L2RpZ2l0YWwtc2lnbmF0dXJlIiB4bWxuczptdmVyPSJodHRwOi8v
c2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvbWFya3VwLWNvbXBhdGliaWxpdHkvMjAwNiIgeG1s
bnM6bT0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4
bWxuczptcmVscz0iaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL3BhY2thZ2UvMjAw
Ni9yZWxhdGlvbnNoaXBzIiB4bWxuczpzcHdwPSJodHRwOi8vbWljcm9zb2Z0LmNvbS9zaGFyZXBv
aW50L3dlYnBhcnRwYWdlcyIgeG1sbnM6ZXgxMnQ9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5j
b20vZXhjaGFuZ2Uvc2VydmljZXMvMjAwNi90eXBlcyIgeG1sbnM6ZXgxMm09Imh0dHA6Ly9zY2hl
bWFzLm1pY3Jvc29mdC5jb20vZXhjaGFuZ2Uvc2VydmljZXMvMjAwNi9tZXNzYWdlcyIgeG1sbnM6
cHB0c2w9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vc2hhcmVwb2ludC9zb2FwL1NsaWRl
TGlicmFyeS8iIHhtbG5zOnNwc2w9Imh0dHA6Ly9taWNyb3NvZnQuY29tL3dlYnNlcnZpY2VzL1No
YXJlUG9pbnRQb3J0YWxTZXJ2ZXIvUHVibGlzaGVkTGlua3NTZXJ2aWNlIiB4bWxuczpaPSJ1cm46
c2NoZW1hcy1taWNyb3NvZnQtY29tOiIgeG1sbnM6c3Q9IiYjMTsiIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4KCjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PUNvbnRlbnQt
VHlwZSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXMtYXNjaWkiPgo8bWV0YSBuYW1lPUdl
bmVyYXRvciBjb250ZW50PSJNaWNyb3NvZnQgV29yZCAxMiAoZmlsdGVyZWQgbWVkaXVtKSI+Cjxz
dHlsZT4KPCEtLQogLyogRm9udCBEZWZpbml0aW9ucyAqLwogQGZvbnQtZmFjZQoJe2ZvbnQtZmFt
aWx5OkNhbGlicmk7CglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDt9CkBmb250LWZhY2UK
CXtmb250LWZhbWlseTpUYWhvbWE7CglwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDt9CkBm
b250LWZhY2UKCXtmb250LWZhbWlseTpDb25zb2xhczsKCXBhbm9zZS0xOjIgMTEgNiA5IDIgMiA0
IDMgMiA0O30KIC8qIFN0eWxlIERlZmluaXRpb25zICovCiBwLk1zb05vcm1hbCwgbGkuTXNvTm9y
bWFsLCBkaXYuTXNvTm9ybWFsCgl7bWFyZ2luOjBpbjsKCW1hcmdpbi1ib3R0b206LjAwMDFwdDsK
CWZvbnQtc2l6ZToxMi4wcHQ7Cglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIiwic2VyaWYi
O30KYTpsaW5rLCBzcGFuLk1zb0h5cGVybGluawoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsKCWNv
bG9yOmJsdWU7Cgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30KYTp2aXNpdGVkLCBzcGFuLk1z
b0h5cGVybGlua0ZvbGxvd2VkCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5OwoJY29sb3I6cHVycGxl
OwoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9CnByZQoJe21zby1zdHlsZS1wcmlvcml0eTo5
OTsKCW1zby1zdHlsZS1saW5rOiJIVE1MIFByZWZvcm1hdHRlZCBDaGFyIjsKCW1hcmdpbjowaW47
CgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7Cglmb250LXNpemU6MTAuMHB0OwoJZm9udC1mYW1pbHk6
IkNvdXJpZXIgTmV3Ijt9CnNwYW4uSFRNTFByZWZvcm1hdHRlZENoYXIKCXttc28tc3R5bGUtbmFt
ZToiSFRNTCBQcmVmb3JtYXR0ZWQgQ2hhciI7Cgltc28tc3R5bGUtcHJpb3JpdHk6OTk7Cgltc28t
c3R5bGUtbGluazoiSFRNTCBQcmVmb3JtYXR0ZWQiOwoJZm9udC1mYW1pbHk6Q29uc29sYXM7fQpz
cGFuLkVtYWlsU3R5bGUxOQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsLXJlcGx5OwoJZm9udC1m
YW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsKCWNvbG9yOiMxRjQ5N0Q7fQouTXNvQ2hwRGVm
YXVsdAoJe21zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5O30KQHBhZ2UgU2VjdGlvbjEKCXtzaXpl
OjguNWluIDExLjBpbjsKCW1hcmdpbjoxLjBpbiAxLjBpbiAxLjBpbiAxLjBpbjt9CmRpdi5TZWN0
aW9uMQoJe3BhZ2U6U2VjdGlvbjE7fQotLT4KPC9zdHlsZT4KPCEtLVtpZiBndGUgbXNvIDldPjx4
bWw+CiA8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0PSJlZGl0IiBzcGlkbWF4PSIxMDI2IiAvPgo8L3ht
bD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4KIDxvOnNoYXBlbGF5b3V0IHY6
ZXh0PSJlZGl0Ij4KICA8bzppZG1hcCB2OmV4dD0iZWRpdCIgZGF0YT0iMSIgLz4KIDwvbzpzaGFw
ZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4KPC9oZWFkPgoKPGJvZHkgbGFuZz1FTi1VUyBsaW5r
PWJsdWUgdmxpbms9cHVycGxlPgoKPGRpdiBjbGFzcz1TZWN0aW9uMT4KCjxwIGNsYXNzPU1zb05v
cm1hbD48c3BhbiBzdHlsZT0nZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseToiQ2FsaWJyaSIs
InNhbnMtc2VyaWYiOwpjb2xvcjojMUY0OTdEJz5DbGF5LDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4K
CjxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBzdHlsZT0nZm9udC1zaXplOjExLjBwdDtmb250LWZh
bWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOwpjb2xvcjojMUY0OTdEJz48bzpwPiZuYnNwOzwv
bzpwPjwvc3Bhbj48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6
ZToxMS4wcHQ7Zm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsKY29sb3I6IzFGNDk3
RCc+PGJyPgpUaGFua3MhJm5ic3A7IFRoYXQgc291bmRzIGxpa2UgYW4gZWFzeSBlbm91Z2ggZW5o
YW5jZW1lbnQgdG8gbWFrZS4mbmJzcDsgSSYjODIxNztsbAptYWtlIGl0IGEgcG9pbnQgdG8ga2Vl
cCBhbiBleWUgb24gdGhlIHNlc3Npb25zIHRhYmxlIHVudGlsIHRoZW4sIGFuZCByZW1pbmQgbXkK
Y293b3JrZXJzIHRvIGxvZ291dCBwcm9wZXJseS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+Cgo8cCBj
bGFzcz1Nc29Ob3JtYWw+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6
IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsKY29sb3I6IzFGNDk3RCc+PG86cD4mbmJzcDs8L286cD48
L3NwYW4+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIHN0eWxlPSdmb250LXNpemU6MTEu
MHB0O2ZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7CmNvbG9yOiMxRjQ5N0QnPkNo
ZWVycyw8bzpwPjwvbzpwPjwvc3Bhbj48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gc3R5
bGU9J2ZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsK
Y29sb3I6IzFGNDk3RCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgoKPHAgY2xhc3M9TXNv
Tm9ybWFsPjxzcGFuIHN0eWxlPSdmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiJDYWxpYnJp
Iiwic2Fucy1zZXJpZiI7CmNvbG9yOiMxRjQ5N0QnPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwv
cD4KCjxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBzdHlsZT0nZm9udC1zaXplOjExLjBwdDtmb250
LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOwpjb2xvcjojMUY0OTdEJz4tSWFuPG86cD48
L286cD48L3NwYW4+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIHN0eWxlPSdmb250LXNp
emU6MTEuMHB0O2ZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7CmNvbG9yOiMxRjQ5
N0QnPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KCjxkaXYgc3R5bGU9J2JvcmRlcjpub25l
O2JvcmRlci10b3A6c29saWQgI0I1QzRERiAxLjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4gMGlu
Jz4KCjxwIGNsYXNzPU1zb05vcm1hbD48Yj48c3BhbiBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtm
b250LWZhbWlseToiVGFob21hIiwic2Fucy1zZXJpZiInPkZyb206PC9zcGFuPjwvYj48c3Bhbgpz
dHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiVGFob21hIiwic2Fucy1zZXJpZiIn
Pgprb2hhLWRldmVsLWJvdW5jZXNAbGlzdHMua29oYS5vcmcgW21haWx0bzprb2hhLWRldmVsLWJv
dW5jZXNAbGlzdHMua29oYS5vcmddIDxiPk9uCkJlaGFsZiBPZiA8L2I+Q2xheSBGb3V0czxicj4K
PGI+U2VudDo8L2I+IFdlZG5lc2RheSwgRmVicnVhcnkgMTcsIDIwMTAgMjowNCBQTTxicj4KPGI+
VG86PC9iPiBLb2hhLWRldmVsPGJyPgo8Yj5TdWJqZWN0OjwvYj4gUmU6IFtLb2hhLWRldmVsXSBL
b2hhIHNlc3Npb25zIHRhYmxlIGlzIHJpZGljdWxvdXNseSBodWdlPG86cD48L286cD48L3NwYW4+
PC9wPgoKPC9kaXY+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PG86cD4mbmJzcDs8L286cD48L3A+Cgo8
cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi1ib3R0b206MTIuMHB0Jz5Zb3UgY2FuIGFs
c28gdXNlICZxdW90O3RydW5jYXRlCnNlc3Npb25zJnF1b3Q7IHRvIGRvIHRoZSBqb2IgaWYgeW91
IGp1c3Qgd2FudCB0byBjbGVhciBvdXQgdGhlIGNvbnRlbnRzIG9mIHRoZQp0YWJsZS4gSXQncyBm
YXN0ZXIgYW5kIHNpbXBsZXIgdGhhbiB1c2luZyBteXNxbGR1bXAuPG86cD48L286cD48L3A+Cgo8
ZGl2PgoKPHAgY2xhc3M9TXNvTm9ybWFsPlRoaXMgaXNzdWUgYXJpc2VzIGZyb20gdGhlIGZhY3Qg
dGhhdCB0aGUgd2F5IEtvaGEgaXMKd3JpdHRlbiwgaWYgYSB1c2VyIGp1c3Qgd2Fsa3MgYXdheSBm
cm9tIGEgc2Vzc2lvbiB3aXRob3V0IGxvZ2dpbmcgb3V0LCB0aGVpcgpzZXNzaW9uIGRhdGEgd2ls
bCBoYW5nIG91dCBpbiB0aGUgdGhlIHNlc3Npb25zIHRhYmxlIGZvcmV2ZXIuJm5ic3A7QSBwcm9w
ZXIKc29sdXRpb24gd291bGQgaW52b2x2ZSBhZGRpbmcgYSB0aW1lc3RhbXAgY29sdW1uIHRvIHRo
ZSBzZXNzaW9ucyB0YWJsZSwKZW5hYmxpbmcgb25lIHRvIGN1bGwgb25seSBleHBpcmVkIHNlc3Np
b25zIGVudGlyZWx5IHdpdGhpbiBTUUwgc3RhdGVtZW50cy4gV2l0aAp0aGUgY3VycmVudCBzY2hl
bWEsIHlvdSdkIGhhdmUgdG8gcGFyc2UgdGhlIGNvbnRlbnRzIG9mIGVhY2ggcm93IHdpdGhpbiBh
IHVzZXIKcHJvZ3JhbSwgdGhlbiBjdWxsIGJhc2VkIG9uIHRoZSBleHBpcnkgY29udGFpbmVkIHdp
dGhpbiB0aGUgc2Vzc2lvbiBkYXRhCml0c2VsZi48bzpwPjwvbzpwPjwvcD4KCjwvZGl2PgoKPGRp
dj4KCjxwIGNsYXNzPU1zb05vcm1hbD48bzpwPiZuYnNwOzwvbzpwPjwvcD4KCjwvZGl2PgoKPGRp
dj4KCjxwIGNsYXNzPU1zb05vcm1hbD5DaGVlcnMsPG86cD48L286cD48L3A+Cgo8L2Rpdj4KCjxk
aXY+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+Q2xheTxvOnA+PC9vOnA+PC9wPgoKPC9kaXY+Cgo8ZGl2
PgoKPHAgY2xhc3M9TXNvTm9ybWFsPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPgoKPC9kaXY+Cgo8ZGl2
PgoKPGRpdj4KCjxwIGNsYXNzPU1zb05vcm1hbD48bzpwPiZuYnNwOzwvbzpwPjwvcD4KCjxkaXY+
Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+MjAxMC8yLzE3IFdhbGxzLCBJYW4gJmx0OzxhCmhyZWY9Im1h
aWx0bzpJYW4uV2FsbHNAbWVkLm55dS5lZHUiPklhbi5XYWxsc0BtZWQubnl1LmVkdTwvYT4mZ3Q7
PG86cD48L286cD48L3A+Cgo8ZGl2PgoKPGRpdj4KCjxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0n
bXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8nPkRldmVs
b3BlcnMsPG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1tYXJn
aW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvJz4mbmJzcDs8bzpwPjwv
bzpwPjwvcD4KCjxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbXNvLW1hcmdpbi10b3AtYWx0OmF1
dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8nPiZuYnNwOzxvOnA+PC9vOnA+PC9wPgoKPHAg
Y2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2lu
LWJvdHRvbS1hbHQ6YXV0byc+QWZ0ZXIKcGVyZm9ybWluZyBhIHNvZnR3YXJlIHVwZ3JhZGUgYW5k
IHNlcnZlciByZWJvb3QsIEkgY2FtZSBhY3Jvc3MgdGhpcwpwcm9ibGVtLiZuYnNwOyBNeSBrb2hh
LnNlc3Npb25zIHRhYmxlIGlzIG92ZXIgMTMgbWlsbGlvbiBlbnRyaWVzLiZuYnNwOyBUaGlzCnNl
ZW1zIHRvIGluZGljYXRlIHRoYXQgZW50cmllcyBpbnRvIHRoZSB0YWJsZSB3ZXJlIG5ldmVyIHJl
bW92ZWQsIGFuZCB0aGF0IG1heQpoZWxwIHRvIGV4cGxhaW4gd2h5IG15IGJhY2t1cCBteXNxbGR1
bXBzIGFyZSBpbmNyZWFzaW5nIGJ5IGFyb3VuZCA0TUIgZGFpbHkuPG86cD48L286cD48L3A+Cgo8
cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJn
aW4tYm90dG9tLWFsdDphdXRvJz4mbmJzcDs8bzpwPjwvbzpwPjwvcD4KCjxwIGNsYXNzPU1zb05v
cm1hbCBzdHlsZT0nbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0
OmF1dG8nPkNocmlzCkNvcm1hY2sgc3VnZ2VzdGVkIHRoYXQgSSBkbyBhIG15c3FsZHVtcCBvZiBz
ZXNzaW9ucyB3aXRoIHRoZSBuby1kYXRhIG9wdGlvbgpzZXQsIHRoZW4gcmVpbXBvcnQgaXQgaW50
byB0aGUgZGF0YWJhc2UgdG8gY2xlYXIgaXQgb3V0LiZuYnNwOyBJJiM4MjE3O3ZlCmZpbmFsbHkg
Z290dGVuIHNlc3Npb25zIHRvIHRlbGwgbWUgd2hhdCBpbmRleGVzIGl0IGhhcyBvbiBpdCwgc28g
dGhhdCBjYW4gYmUKcmVjcmVhdGVkIGFzIHdlbGwuJm5ic3A7IEFyZSB0aGVyZSBhbnkgcmlza3Mg
dG8gZG9pbmcgdGhpcyB0aGF0IEkmIzgyMTc7bSBub3QKZmFjdG9yaW5nIGluPzxvOnA+PC9vOnA+
PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bztt
c28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byc+Jm5ic3A7PG86cD48L286cD48L3A+Cgo8cCBjbGFz
cz1Nc29Ob3JtYWwgc3R5bGU9J21zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90
dG9tLWFsdDphdXRvJz5Nb3JlCmdlbmVyYWxseSwgd2hhdCBjb3VsZCBiZSBjYXVzaW5nIG15IHNl
c3Npb25zIHRhYmxlIHRvIGdldCBzbyBvdXQgb2YgaGFuZD8mbmJzcDsKUGVybWlzc2lvbnMsIHBl
cmhhcHM/Jm5ic3A7IFNvbWV0aGluZyBpbiB0aGUgY29kZSBiZWluZyBvZmY/PG86cD48L286cD48
L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1tYXJnaW4tdG9wLWFsdDphdXRvO21z
by1tYXJnaW4tYm90dG9tLWFsdDphdXRvJz4mbmJzcDs8bzpwPjwvbzpwPjwvcD4KCjxwIGNsYXNz
PU1zb05vcm1hbCBzdHlsZT0nbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0
b20tYWx0OmF1dG8nPkFueQppZGVhcyBvciBmZWVkYmFjayB3b3VsZCBiZSBhcHByZWNpYXRlZC4m
bmJzcDsgVGhhbmtzITxvOnA+PC9vOnA+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdt
c28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0byc+Jm5ic3A7
PG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1tYXJnaW4tdG9w
LWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvJz4mbmJzcDs8bzpwPjwvbzpwPjwv
cD4KCjxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNv
LW1hcmdpbi1ib3R0b20tYWx0OmF1dG8nPiZuYnNwOzxvOnA+PC9vOnA+PC9wPgoKPHAgY2xhc3M9
TXNvTm9ybWFsIHN0eWxlPSdtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRv
bS1hbHQ6YXV0byc+SWFuCldhbGxzPG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWwg
c3R5bGU9J21zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRv
Jz5TeXN0ZW1zCkludGVncmF0aW9uIExpYnJhcmlhbjxvOnA+PC9vOnA+PC9wPgoKPHAgY2xhc3M9
TXNvTm9ybWFsIHN0eWxlPSdtc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzttc28tbWFyZ2luLWJvdHRv
bS1hbHQ6YXV0byc+TllVCkhlYWx0aCBTY2llbmNlcyBMaWJyYXJpZXM8bzpwPjwvbzpwPjwvcD4K
CjxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1h
cmdpbi1ib3R0b20tYWx0OmF1dG8nPjU1MApGaXJzdCBBdmUuLCBOZXcgWW9yaywgTlkgMTAwMTY8
bzpwPjwvbzpwPjwvcD4KCjxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbXNvLW1hcmdpbi10b3At
YWx0OmF1dG87bXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG8nPigyMTIpCjI2My04Njg3PG86cD48
L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1tYXJnaW4tdG9wLWFsdDph
dXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvJz4mbmJzcDs8bzpwPjwvbzpwPjwvcD4KCjxw
IGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbXNvLW1hcmdpbi10b3AtYWx0OmF1dG87bXNvLW1hcmdp
bi1ib3R0b20tYWx0OmF1dG8nPiZuYnNwOzxvOnA+PC9vOnA+PC9wPgoKPC9kaXY+Cgo8ZGl2PgoK
PHAgY2xhc3M9TXNvTm9ybWFsPi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLTxicj4KVGhpcyBlbWFpbCBtZXNzYWdlLCBpbmNsdWRpbmcg
YW55IGF0dGFjaG1lbnRzLCBpcyBmb3IgdGhlIHNvbGUgdXNlIG9mIHRoZQppbnRlbmRlZCByZWNp
cGllbnQocykgYW5kIG1heSBjb250YWluIGluZm9ybWF0aW9uIHRoYXQgaXMgcHJvcHJpZXRhcnks
CmNvbmZpZGVudGlhbCwgYW5kIGV4ZW1wdCBmcm9tIGRpc2Nsb3N1cmUgdW5kZXIgYXBwbGljYWJs
ZSBsYXcuIEFueSB1bmF1dGhvcml6ZWQKcmV2aWV3LCB1c2UsIGRpc2Nsb3N1cmUsIG9yIGRpc3Ry
aWJ1dGlvbiBpcyBwcm9oaWJpdGVkLiBJZiB5b3UgaGF2ZSByZWNlaXZlZAp0aGlzIGVtYWlsIGlu
IGVycm9yIHBsZWFzZSBub3RpZnkgdGhlIHNlbmRlciBieSByZXR1cm4gZW1haWwgYW5kIGRlbGV0
ZSB0aGUKb3JpZ2luYWwgbWVzc2FnZS4gUGxlYXNlIG5vdGUsIHRoZSByZWNpcGllbnQgc2hvdWxk
IGNoZWNrIHRoaXMgZW1haWwgYW5kIGFueQphdHRhY2htZW50cyBmb3IgdGhlIHByZXNlbmNlIG9m
IHZpcnVzZXMuIFRoZSBvcmdhbml6YXRpb24gYWNjZXB0cyBubyBsaWFiaWxpdHkKZm9yIGFueSBk
YW1hZ2UgY2F1c2VkIGJ5IGFueSB2aXJ1cyB0cmFuc21pdHRlZCBieSB0aGlzIGVtYWlsLjxicj4K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IDxvOnA+PC9vOnA+PC9wPgoKPC9kaXY+
Cgo8L2Rpdj4KCjxwIGNsYXNzPU1zb05vcm1hbD48YnI+Cl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fPGJyPgpLb2hhLWRldmVsIG1haWxpbmcgbGlzdDxicj4K
PGEgaHJlZj0ibWFpbHRvOktvaGEtZGV2ZWxAbGlzdHMua29oYS5vcmciPktvaGEtZGV2ZWxAbGlz
dHMua29oYS5vcmc8L2E+PGJyPgo8YSBocmVmPSJodHRwOi8vbGlzdHMua29oYS5vcmcvbWFpbG1h
bi9saXN0aW5mby9rb2hhLWRldmVsIiB0YXJnZXQ9Il9ibGFuayI+aHR0cDovL2xpc3RzLmtvaGEu
b3JnL21haWxtYW4vbGlzdGluZm8va29oYS1kZXZlbDwvYT48bzpwPjwvbzpwPjwvcD4KCjwvZGl2
PgoKPHAgY2xhc3M9TXNvTm9ybWFsPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPgoKPC9kaXY+Cgo8L2Rp
dj4KCjwvZGl2PgoKPHByZT48L1BSRT4KPGh0bWw+Cjxib2R5PgotLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS08YnIgLz4KVGhpcyBlbWFp
bCBtZXNzYWdlLCBpbmNsdWRpbmcgYW55IGF0dGFjaG1lbnRzLCBpcyBmb3IgdGhlIHNvbGUgdXNl
IG9mIHRoZSBpbnRlbmRlZCByZWNpcGllbnQocykgYW5kIG1heSBjb250YWluIGluZm9ybWF0aW9u
IHRoYXQgaXMgcHJvcHJpZXRhcnksIGNvbmZpZGVudGlhbCwgYW5kIGV4ZW1wdCBmcm9tIGRpc2Ns
b3N1cmUgdW5kZXIgYXBwbGljYWJsZSBsYXcuIEFueSB1bmF1dGhvcml6ZWQgcmV2aWV3LCB1c2Us
IGRpc2Nsb3N1cmUsIG9yIGRpc3RyaWJ1dGlvbiBpcyBwcm9oaWJpdGVkLiBJZiB5b3UgaGF2ZSBy
ZWNlaXZlZCB0aGlzIGVtYWlsIGluIGVycm9yIHBsZWFzZSBub3RpZnkgdGhlIHNlbmRlciBieSBy
ZXR1cm4gZW1haWwgYW5kIGRlbGV0ZSB0aGUgb3JpZ2luYWwgbWVzc2FnZS4gUGxlYXNlIG5vdGUs
IHRoZSByZWNpcGllbnQgc2hvdWxkIGNoZWNrIHRoaXMgZW1haWwgYW5kIGFueSBhdHRhY2htZW50
cyBmb3IgdGhlIHByZXNlbmNlIG9mIHZpcnVzZXMuIFRoZSBvcmdhbml6YXRpb24gYWNjZXB0cyBu
byBsaWFiaWxpdHkgZm9yIGFueSBkYW1hZ2UgY2F1c2VkIGJ5IGFueSB2aXJ1cyB0cmFuc21pdHRl
ZCBieSB0aGlzIGVtYWlsLjxiciAvPgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
PC9ib2R5Pgo8L2h0bWw+CjxQUkU+CjwvcHJlPjwvYm9keT4KCjwvaHRtbD4K

--===============8640295916317627358==--


From gmcharlt@gmail.com Wed Feb 17 20:21:20 2010
From: Galen Charlton 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Wed, 17 Feb 2010 14:21:10 -0500
Message-ID: <66bd34b51002171121j355fa43ek3544d412012b898b@mail.gmail.com>
In-Reply-To: <192a1aab1002171104q6e069eb5h4a05d29eea9594b2@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============8544482693606003120=="

--===============8544482693606003120==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Hi,

2010/2/17 Clay Fouts :
> You can also use "truncate sessions" to do the job if you just want to clear
> out the contents of the table. It's faster and simpler than using mysqldump.

Also, in HEAD there's a little script to truncate sessions as well as
get rid of old zebraqueue entries.  It's called
misc/cronjobs/cleanup_database.pl, and usage is

cleanup_database.pl --sessions --zebraqueue {# of days back to purge}

I don't think it's in the 3.0.x branch, but it should work in any
3.0.x database without modification.

> This issue arises from the fact that the way Koha is written, if a user just
> walks away from a session without logging out, their session data will hang
> out in the the sessions table forever. A proper solution would involve
> adding a timestamp column to the sessions table, enabling one to cull only
> expired sessions entirely within SQL statements. With the current schema,
> you'd have to parse the contents of each row within a user program, then
> cull based on the expiry contained within the session data itself.

I agree, this would be useful, either done within Koha itself or sent
to the maintainers of CGI::Session.

Regards,

Galen
-- 
Galen Charlton
gmcharlt@gmail.com

--===============8544482693606003120==--


From chris@bigballofwax.co.nz Wed Feb 17 21:02:38 2010
From: Chris Cormack 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 09:02:11 +1300
Message-ID: <606aab811002171202m3d7761c9x289a59d7036ae3d9@mail.gmail.com>
In-Reply-To: <192a1aab1002171104q6e069eb5h4a05d29eea9594b2@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============4476305394871504222=="

--===============4476305394871504222==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

2010/2/18 Clay Fouts :
> You can also use "truncate sessions" to do the job if you just want to clear
> out the contents of the table. It's faster and simpler than using mysqldump.
>
> This issue arises from the fact that the way Koha is written, if a user just
> walks away from a session without logging out, their session data will hang
> out in the the sessions table forever. A proper solution would involve
> adding a timestamp column to the sessions table, enabling one to cull only
> expired sessions entirely within SQL statements. With the current schema,
> you'd have to parse the contents of each row within a user program, then
> cull based on the expiry contained within the session data itself.
> Cheers,
> Clay
>
I suggested drop and recreate, because for a table that huge, truncate
will take a lot lot longer.
But as a cron job, definitely truncate, followed by optimize

Chris

--===============4476305394871504222==--


From clay.fouts@liblime.com Wed Feb 17 21:09:08 2010
From: Clay Fouts 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Wed, 17 Feb 2010 12:08:39 -0800
Message-ID: <192a1aab1002171208y631bf9bbn2d905a9e003e6f3b@mail.gmail.com>
In-Reply-To: <606aab811002171202m3d7761c9x289a59d7036ae3d9@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============1509202066440986693=="

--===============1509202066440986693==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

It depends, actually. For tables without FK constraints (like Koha's
"sessions"), truncation is instantaneous in MySQL.


On Wed, Feb 17, 2010 at 12:02 PM, Chris Cormack wro=
te:

> 2010/2/18 Clay Fouts :
> > You can also use "truncate sessions" to do the job if you just want to
> clear
> > out the contents of the table. It's faster and simpler than using
> mysqldump.
> >
> > This issue arises from the fact that the way Koha is written, if a user
> just
> > walks away from a session without logging out, their session data will
> hang
> > out in the the sessions table forever. A proper solution would involve
> > adding a timestamp column to the sessions table, enabling one to cull
> only
> > expired sessions entirely within SQL statements. With the current schema,
> > you'd have to parse the contents of each row within a user program, then
> > cull based on the expiry contained within the session data itself.
> > Cheers,
> > Clay
> >
> I suggested drop and recreate, because for a table that huge, truncate
> will take a lot lot longer.
> But as a cron job, definitely truncate, followed by optimize
>
> Chris
>



--===============1509202066440986693==
Content-Type: text/html
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="attachment.html"
MIME-Version: 1.0

SXQgZGVwZW5kcywgYWN0dWFsbHkuIEZvciB0YWJsZXMgd2l0aG91dCBGSyBjb25zdHJhaW50cyAo
bGlrZSBLb2hhJiMzOTtzICZxdW90O3Nlc3Npb25zJnF1b3Q7KSwgdHJ1bmNhdGlvbiBpcyBpbnN0
YW50YW5lb3VzIGluIE15U1FMLjxkaXY+PGJyPjxicj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSI+
T24gV2VkLCBGZWIgMTcsIDIwMTAgYXQgMTI6MDIgUE0sIENocmlzIENvcm1hY2sgPHNwYW4gZGly
PSJsdHIiPiZsdDs8YSBocmVmPSJtYWlsdG86Y2hyaXNAYmlnYmFsbG9md2F4LmNvLm56Ij5jaHJp
c0BiaWdiYWxsb2Z3YXguY28ubno8L2E+Jmd0Ozwvc3Bhbj4gd3JvdGU6PGJyPgoKPGJsb2NrcXVv
dGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxl
ZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleDsiPjIwMTAvMi8xOCBDbGF5IEZvdXRz
ICZsdDs8YSBocmVmPSJtYWlsdG86Y2xheS5mb3V0c0BsaWJsaW1lLmNvbSI+Y2xheS5mb3V0c0Bs
aWJsaW1lLmNvbTwvYT4mZ3Q7Ojxicj4KPGRpdiBjbGFzcz0iaW0iPiZndDsgWW91IGNhbiBhbHNv
IHVzZSAmcXVvdDt0cnVuY2F0ZSBzZXNzaW9ucyZxdW90OyB0byBkbyB0aGUgam9iIGlmIHlvdSBq
dXN0IHdhbnQgdG8gY2xlYXI8YnI+CiZndDsgb3V0IHRoZSBjb250ZW50cyBvZiB0aGUgdGFibGUu
IEl0JiMzOTtzIGZhc3RlciBhbmQgc2ltcGxlciB0aGFuIHVzaW5nIG15c3FsZHVtcC48YnI+CiZn
dDs8YnI+CiZndDsgVGhpcyBpc3N1ZSBhcmlzZXMgZnJvbSB0aGUgZmFjdCB0aGF0IHRoZSB3YXkg
S29oYSBpcyB3cml0dGVuLCBpZiBhIHVzZXIganVzdDxicj4KJmd0OyB3YWxrcyBhd2F5IGZyb20g
YSBzZXNzaW9uIHdpdGhvdXQgbG9nZ2luZyBvdXQsIHRoZWlyIHNlc3Npb24gZGF0YSB3aWxsIGhh
bmc8YnI+CiZndDsgb3V0IGluIHRoZSB0aGUgc2Vzc2lvbnMgdGFibGUgZm9yZXZlci6gQSBwcm9w
ZXIgc29sdXRpb24gd291bGQgaW52b2x2ZTxicj4KJmd0OyBhZGRpbmcgYSB0aW1lc3RhbXAgY29s
dW1uIHRvIHRoZSBzZXNzaW9ucyB0YWJsZSwgZW5hYmxpbmcgb25lIHRvIGN1bGwgb25seTxicj4K
Jmd0OyBleHBpcmVkIHNlc3Npb25zIGVudGlyZWx5IHdpdGhpbiBTUUwgc3RhdGVtZW50cy4gV2l0
aCB0aGUgY3VycmVudCBzY2hlbWEsPGJyPgomZ3Q7IHlvdSYjMzk7ZCBoYXZlIHRvIHBhcnNlIHRo
ZSBjb250ZW50cyBvZiBlYWNoIHJvdyB3aXRoaW4gYSB1c2VyIHByb2dyYW0sIHRoZW48YnI+CiZn
dDsgY3VsbCBiYXNlZCBvbiB0aGUgZXhwaXJ5IGNvbnRhaW5lZCB3aXRoaW4gdGhlIHNlc3Npb24g
ZGF0YSBpdHNlbGYuPGJyPgomZ3Q7IENoZWVycyw8YnI+CiZndDsgQ2xheTxicj4KJmd0Ozxicj4K
PC9kaXY+SSBzdWdnZXN0ZWQgZHJvcCBhbmQgcmVjcmVhdGUsIGJlY2F1c2UgZm9yIGEgdGFibGUg
dGhhdCBodWdlLCB0cnVuY2F0ZTxicj4Kd2lsbCB0YWtlIGEgbG90IGxvdCBsb25nZXIuPGJyPgpC
dXQgYXMgYSBjcm9uIGpvYiwgZGVmaW5pdGVseSB0cnVuY2F0ZSwgZm9sbG93ZWQgYnkgb3B0aW1p
emU8YnI+Cjxmb250IGNvbG9yPSIjODg4ODg4Ij48YnI+CkNocmlzPGJyPgo8L2ZvbnQ+PC9ibG9j
a3F1b3RlPjwvZGl2Pjxicj48L2Rpdj4K

--===============1509202066440986693==--


From chris@bigballofwax.co.nz Wed Feb 17 21:10:32 2010
From: Chris Cormack 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 09:10:05 +1300
Message-ID: <606aab811002171210g3950778ej852c181146d252b2@mail.gmail.com>
In-Reply-To: <192a1aab1002171208y631bf9bbn2d905a9e003e6f3b@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============7228369953322069183=="

--===============7228369953322069183==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit

2010/2/18 Clay Fouts :
> It depends, actually. For tables without FK constraints (like Koha's
> "sessions"), truncation is instantaneous in MySQL.
>
Not when they tried it yesterday :-)

It does depend, InnoDB can do some strange things.

Chris

--===============7228369953322069183==--


From frederic@tamil.fr Wed Feb 17 21:10:56 2010
From: Frederic Demians 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Wed, 17 Feb 2010 21:10:44 +0100
Message-ID: <4B7C4D44.5030701@tamil.fr>
In-Reply-To: <606aab811002171202m3d7761c9x289a59d7036ae3d9@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============6990495227740497038=="

--===============6990495227740497038==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

And since you must backup daily your Koha DB, you should truncate 
sessions table just before mysqldump-ing in order to backup as few 
sessions data as possible.
--
Frédéric


--===============6990495227740497038==--


From clay.fouts@liblime.com Wed Feb 17 21:12:48 2010
From: Clay Fouts 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Wed, 17 Feb 2010 12:12:20 -0800
Message-ID: <192a1aab1002171212h36439d4dl4014b42fb4e0163d@mail.gmail.com>
In-Reply-To: <543F9234BDD8434A8D45C3D6337B7C8EB15569FD@MSGWSDCPMB07.nyumc.org>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============4334149956111633385=="

--===============4334149956111633385==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Sessions are created for every OPAC session, too, even if they're not logged
in with a login/password. And consequently there's no way to log those out.


On Wed, Feb 17, 2010 at 11:14 AM, Walls, Ian  wrote:

>  Clay,
>
>
>
>
> Thanks!  That sounds like an easy enough enhancement to make.  I=E2=80=99ll=
 make it
> a point to keep an eye on the sessions table until then, and remind my
> coworkers to logout properly.
>
>
>
> Cheers,
>
>
>
>
>
> -Ian
>
>
>
> *From:* koha-devel-bounces@lists.koha.org [mailto:
> koha-devel-bounces@lists.koha.org] *On Behalf Of *Clay Fouts
> *Sent:* Wednesday, February 17, 2010 2:04 PM
> *To:* Koha-devel
> *Subject:* Re: [Koha-devel] Koha sessions table is ridiculously huge
>
>
>
> You can also use "truncate sessions" to do the job if you just want to
> clear out the contents of the table. It's faster and simpler than using
> mysqldump.
>
> This issue arises from the fact that the way Koha is written, if a user
> just walks away from a session without logging out, their session data will
> hang out in the the sessions table forever. A proper solution would involve
> adding a timestamp column to the sessions table, enabling one to cull only
> expired sessions entirely within SQL statements. With the current schema,
> you'd have to parse the contents of each row within a user program, then
> cull based on the expiry contained within the session data itself.
>
>
>
> Cheers,
>
> Clay
>
>
>
>
>
> 2010/2/17 Walls, Ian 
>
> Developers,
>
>
>
>
>
> After performing a software upgrade and server reboot, I came across this
> problem.  My koha.sessions table is over 13 million entries.  This seems to
> indicate that entries into the table were never removed, and that may help
> to explain why my backup mysqldumps are increasing by around 4MB daily.
>
>
>
> Chris Cormack suggested that I do a mysqldump of sessions with the no-data
> option set, then reimport it into the database to clear it out.  I=E2=80=99=
ve
> finally gotten sessions to tell me what indexes it has on it, so that can be
> recreated as well.  Are there any risks to doing this that I=E2=80=99m not =
factoring
> in?
>
>
>
> More generally, what could be causing my sessions table to get so out of
> hand?  Permissions, perhaps?  Something in the code being off?
>
>
>
> Any ideas or feedback would be appreciated.  Thanks!
>
>
>
>
>
>
>
> Ian Walls
>
> Systems Integration Librarian
>
> NYU Health Sciences Libraries
>
> 550 First Ave., New York, NY 10016
>
> (212) 263-8687
>
>
>
>
>
> ------------------------------------------------------------
> This email message, including any attachments, is for the sole use of the
> intended recipient(s) and may contain information that is proprietary,
> confidential, and exempt from disclosure under applicable law. Any
> unauthorized review, use, disclosure, or distribution is prohibited. If you
> have received this email in error please notify the sender by return email
> and delete the original message. Please note, the recipient should check
> this email and any attachments for the presence of viruses. The organization
> accepts no liability for any damage caused by any virus transmitted by this
> email.
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D
>
>
> _______________________________________________
> Koha-devel mailing list
> Koha-devel@lists.koha.org
> http://lists.koha.org/mailman/listinfo/koha-devel
>
>
>
>  ------------------------------------------------------------
> This email message, including any attachments, is for the sole use of the
> intended recipient(s) and may contain information that is proprietary,
> confidential, and exempt from disclosure under applicable law. Any
> unauthorized review, use, disclosure, or distribution is prohibited. If you
> have received this email in error please notify the sender by return email
> and delete the original message. Please note, the recipient should check
> this email and any attachments for the presence of viruses. The organization
> accepts no liability for any damage caused by any virus transmitted by this
> email.
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D
>
>



--===============4334149956111633385==
Content-Type: text/html
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="attachment.html"
MIME-Version: 1.0

U2Vzc2lvbnMgYXJlIGNyZWF0ZWQgZm9yIGV2ZXJ5IE9QQUMgc2Vzc2lvbiwgdG9vLCBldmVuIGlm
IHRoZXkmIzM5O3JlIG5vdCBsb2dnZWQgaW4gd2l0aCBhIGxvZ2luL3Bhc3N3b3JkLiBBbmQgY29u
c2VxdWVudGx5IHRoZXJlJiMzOTtzIG5vIHdheSB0byBsb2cgdGhvc2Ugb3V0LjxkaXY+PGJyPjxi
cj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSI+T24gV2VkLCBGZWIgMTcsIDIwMTAgYXQgMTE6MTQg
QU0sIFdhbGxzLCBJYW4gPHNwYW4gZGlyPSJsdHIiPiZsdDs8YSBocmVmPSJtYWlsdG86SWFuLldh
bGxzQG1lZC5ueXUuZWR1Ij5JYW4uV2FsbHNAbWVkLm55dS5lZHU8L2E+Jmd0Ozwvc3Bhbj4gd3Jv
dGU6PGJyPgoKPGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAg
MCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleDsiPgoK
CgoKCgoKCjxkaXYgbGFuZz0iRU4tVVMiIGxpbms9ImJsdWUiIHZsaW5rPSJwdXJwbGUiPgoKPGRp
dj4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2Nv
bG9yOiMxRjQ5N0QiPkNsYXksPC9zcGFuPjwvcD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFu
IHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2NvbG9yOiMxRjQ5N0QiPqA8L3NwYW4+PC9wPgoKPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Y29sb3I6IzFG
NDk3RCI+PGJyPgpUaGFua3MhoCBUaGF0IHNvdW5kcyBsaWtlIGFuIGVhc3kgZW5vdWdoIGVuaGFu
Y2VtZW50IHRvIG1ha2UuoCBJkmxsCm1ha2UgaXQgYSBwb2ludCB0byBrZWVwIGFuIGV5ZSBvbiB0
aGUgc2Vzc2lvbnMgdGFibGUgdW50aWwgdGhlbiwgYW5kIHJlbWluZCBteQpjb3dvcmtlcnMgdG8g
bG9nb3V0IHByb3Blcmx5Ljwvc3Bhbj48L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBz
dHlsZT0iZm9udC1zaXplOjExLjBwdDtjb2xvcjojMUY0OTdEIj6gPC9zcGFuPjwvcD4KCjxwIGNs
YXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2NvbG9yOiMxRjQ5
N0QiPkNoZWVycyw8L3NwYW4+PC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9
ImZvbnQtc2l6ZToxMS4wcHQ7Y29sb3I6IzFGNDk3RCI+oDwvc3Bhbj48L3A+Cgo8cCBjbGFzcz0i
TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtjb2xvcjojMUY0OTdEIj6g
PC9zcGFuPjwvcD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6
MTEuMHB0O2NvbG9yOiMxRjQ5N0QiPi1JYW48L3NwYW4+PC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1h
bCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Y29sb3I6IzFGNDk3RCI+oDwvc3Bhbj48
L3A+Cgo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9wOnNvbGlkICNCNUM0REYgMS4w
cHQ7cGFkZGluZzozLjBwdCAwaW4gMGluIDBpbiI+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj48
c3BhbiBzdHlsZT0iZm9udC1zaXplOjEwLjBwdCI+RnJvbTo8L3NwYW4+PC9iPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6MTAuMHB0Ij4KPGEgaHJlZj0ibWFpbHRvOmtvaGEtZGV2ZWwtYm91bmNlc0Bs
aXN0cy5rb2hhLm9yZyIgdGFyZ2V0PSJfYmxhbmsiPmtvaGEtZGV2ZWwtYm91bmNlc0BsaXN0cy5r
b2hhLm9yZzwvYT4gW21haWx0bzo8YSBocmVmPSJtYWlsdG86a29oYS1kZXZlbC1ib3VuY2VzQGxp
c3RzLmtvaGEub3JnIiB0YXJnZXQ9Il9ibGFuayI+a29oYS1kZXZlbC1ib3VuY2VzQGxpc3RzLmtv
aGEub3JnPC9hPl0gPGI+T24KQmVoYWxmIE9mIDwvYj5DbGF5IEZvdXRzPGJyPgo8Yj5TZW50Ojwv
Yj4gV2VkbmVzZGF5LCBGZWJydWFyeSAxNywgMjAxMCAyOjA0IFBNPGJyPgo8Yj5Ubzo8L2I+IEtv
aGEtZGV2ZWw8YnI+CjxiPlN1YmplY3Q6PC9iPiBSZTogW0tvaGEtZGV2ZWxdIEtvaGEgc2Vzc2lv
bnMgdGFibGUgaXMgcmlkaWN1bG91c2x5IGh1Z2U8L3NwYW4+PC9wPgoKPC9kaXY+PGRpdj48ZGl2
PjwvZGl2PjxkaXYgY2xhc3M9Img1Ij4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPqA8L3A+Cgo8cCBj
bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPllvdSBjYW4gYWxz
byB1c2UgJnF1b3Q7dHJ1bmNhdGUKc2Vzc2lvbnMmcXVvdDsgdG8gZG8gdGhlIGpvYiBpZiB5b3Ug
anVzdCB3YW50IHRvIGNsZWFyIG91dCB0aGUgY29udGVudHMgb2YgdGhlCnRhYmxlLiBJdCYjMzk7
cyBmYXN0ZXIgYW5kIHNpbXBsZXIgdGhhbiB1c2luZyBteXNxbGR1bXAuPC9wPgoKPGRpdj4KCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPlRoaXMgaXNzdWUgYXJpc2VzIGZyb20gdGhlIGZhY3QgdGhhdCB0
aGUgd2F5IEtvaGEgaXMKd3JpdHRlbiwgaWYgYSB1c2VyIGp1c3Qgd2Fsa3MgYXdheSBmcm9tIGEg
c2Vzc2lvbiB3aXRob3V0IGxvZ2dpbmcgb3V0LCB0aGVpcgpzZXNzaW9uIGRhdGEgd2lsbCBoYW5n
IG91dCBpbiB0aGUgdGhlIHNlc3Npb25zIHRhYmxlIGZvcmV2ZXIuoEEgcHJvcGVyCnNvbHV0aW9u
IHdvdWxkIGludm9sdmUgYWRkaW5nIGEgdGltZXN0YW1wIGNvbHVtbiB0byB0aGUgc2Vzc2lvbnMg
dGFibGUsCmVuYWJsaW5nIG9uZSB0byBjdWxsIG9ubHkgZXhwaXJlZCBzZXNzaW9ucyBlbnRpcmVs
eSB3aXRoaW4gU1FMIHN0YXRlbWVudHMuIFdpdGgKdGhlIGN1cnJlbnQgc2NoZW1hLCB5b3UmIzM5
O2QgaGF2ZSB0byBwYXJzZSB0aGUgY29udGVudHMgb2YgZWFjaCByb3cgd2l0aGluIGEgdXNlcgpw
cm9ncmFtLCB0aGVuIGN1bGwgYmFzZWQgb24gdGhlIGV4cGlyeSBjb250YWluZWQgd2l0aGluIHRo
ZSBzZXNzaW9uIGRhdGEKaXRzZWxmLjwvcD4KCjwvZGl2PgoKPGRpdj4KCjxwIGNsYXNzPSJNc29O
b3JtYWwiPqA8L3A+Cgo8L2Rpdj4KCjxkaXY+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5DaGVlcnMs
PC9wPgoKPC9kaXY+Cgo8ZGl2PgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+Q2xheTwvcD4KCjwvZGl2
PgoKPGRpdj4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPqA8L3A+Cgo8L2Rpdj4KCjxkaXY+Cgo8ZGl2
PgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+oDwvcD4KCjxkaXY+Cgo8cCBjbGFzcz0iTXNvTm9ybWFs
Ij4yMDEwLzIvMTcgV2FsbHMsIElhbiAmbHQ7PGEgaHJlZj0ibWFpbHRvOklhbi5XYWxsc0BtZWQu
bnl1LmVkdSIgdGFyZ2V0PSJfYmxhbmsiPklhbi5XYWxsc0BtZWQubnl1LmVkdTwvYT4mZ3Q7PC9w
PgoKPGRpdj4KCjxkaXY+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5EZXZlbG9wZXJzLDwvcD4KCjxw
IGNsYXNzPSJNc29Ob3JtYWwiPqA8L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj6gPC9wPgoKPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+QWZ0ZXIKcGVyZm9ybWluZyBhIHNvZnR3YXJlIHVwZ3JhZGUgYW5k
IHNlcnZlciByZWJvb3QsIEkgY2FtZSBhY3Jvc3MgdGhpcwpwcm9ibGVtLqAgTXkga29oYS5zZXNz
aW9ucyB0YWJsZSBpcyBvdmVyIDEzIG1pbGxpb24gZW50cmllcy6gIFRoaXMKc2VlbXMgdG8gaW5k
aWNhdGUgdGhhdCBlbnRyaWVzIGludG8gdGhlIHRhYmxlIHdlcmUgbmV2ZXIgcmVtb3ZlZCwgYW5k
IHRoYXQgbWF5CmhlbHAgdG8gZXhwbGFpbiB3aHkgbXkgYmFja3VwIG15c3FsZHVtcHMgYXJlIGlu
Y3JlYXNpbmcgYnkgYXJvdW5kIDRNQiBkYWlseS48L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj6g
PC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+Q2hyaXMKQ29ybWFjayBzdWdnZXN0ZWQgdGhhdCBJ
IGRvIGEgbXlzcWxkdW1wIG9mIHNlc3Npb25zIHdpdGggdGhlIG5vLWRhdGEgb3B0aW9uCnNldCwg
dGhlbiByZWltcG9ydCBpdCBpbnRvIHRoZSBkYXRhYmFzZSB0byBjbGVhciBpdCBvdXQuoCBJknZl
CmZpbmFsbHkgZ290dGVuIHNlc3Npb25zIHRvIHRlbGwgbWUgd2hhdCBpbmRleGVzIGl0IGhhcyBv
biBpdCwgc28gdGhhdCBjYW4gYmUKcmVjcmVhdGVkIGFzIHdlbGwuoCBBcmUgdGhlcmUgYW55IHJp
c2tzIHRvIGRvaW5nIHRoaXMgdGhhdCBJkm0gbm90CmZhY3RvcmluZyBpbj88L3A+Cgo8cCBjbGFz
cz0iTXNvTm9ybWFsIj6gPC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+TW9yZQpnZW5lcmFsbHks
IHdoYXQgY291bGQgYmUgY2F1c2luZyBteSBzZXNzaW9ucyB0YWJsZSB0byBnZXQgc28gb3V0IG9m
IGhhbmQ/oApQZXJtaXNzaW9ucywgcGVyaGFwcz+gIFNvbWV0aGluZyBpbiB0aGUgY29kZSBiZWlu
ZyBvZmY/PC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+oDwvcD4KCjxwIGNsYXNzPSJNc29Ob3Jt
YWwiPkFueQppZGVhcyBvciBmZWVkYmFjayB3b3VsZCBiZSBhcHByZWNpYXRlZC6gIFRoYW5rcyE8
L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj6gPC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+oDwv
cD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPqA8L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JYW4K
V2FsbHM8L3A+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5TeXN0ZW1zCkludGVncmF0aW9uIExpYnJh
cmlhbjwvcD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk5ZVQpIZWFsdGggU2NpZW5jZXMgTGlicmFy
aWVzPC9wPgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+NTUwCkZpcnN0IEF2ZS4sIE5ldyBZb3JrLCBO
WSAxMDAxNjwvcD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPigyMTIpCjI2My04Njg3PC9wPgoKPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+oDwvcD4KCjxwIGNsYXNzPSJNc29Ob3JtYWwiPqA8L3A+Cgo8L2Rp
dj4KCjxkaXY+Cgo8cCBjbGFzcz0iTXNvTm9ybWFsIj4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS08YnI+ClRoaXMgZW1haWwgbWVzc2Fn
ZSwgaW5jbHVkaW5nIGFueSBhdHRhY2htZW50cywgaXMgZm9yIHRoZSBzb2xlIHVzZSBvZiB0aGUK
aW50ZW5kZWQgcmVjaXBpZW50KHMpIGFuZCBtYXkgY29udGFpbiBpbmZvcm1hdGlvbiB0aGF0IGlz
IHByb3ByaWV0YXJ5LApjb25maWRlbnRpYWwsIGFuZCBleGVtcHQgZnJvbSBkaXNjbG9zdXJlIHVu
ZGVyIGFwcGxpY2FibGUgbGF3LiBBbnkgdW5hdXRob3JpemVkCnJldmlldywgdXNlLCBkaXNjbG9z
dXJlLCBvciBkaXN0cmlidXRpb24gaXMgcHJvaGliaXRlZC4gSWYgeW91IGhhdmUgcmVjZWl2ZWQK
dGhpcyBlbWFpbCBpbiBlcnJvciBwbGVhc2Ugbm90aWZ5IHRoZSBzZW5kZXIgYnkgcmV0dXJuIGVt
YWlsIGFuZCBkZWxldGUgdGhlCm9yaWdpbmFsIG1lc3NhZ2UuIFBsZWFzZSBub3RlLCB0aGUgcmVj
aXBpZW50IHNob3VsZCBjaGVjayB0aGlzIGVtYWlsIGFuZCBhbnkKYXR0YWNobWVudHMgZm9yIHRo
ZSBwcmVzZW5jZSBvZiB2aXJ1c2VzLiBUaGUgb3JnYW5pemF0aW9uIGFjY2VwdHMgbm8gbGlhYmls
aXR5CmZvciBhbnkgZGFtYWdlIGNhdXNlZCBieSBhbnkgdmlydXMgdHJhbnNtaXR0ZWQgYnkgdGhp
cyBlbWFpbC48YnI+Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSA8L3A+Cgo8L2Rp
dj4KCjwvZGl2PgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGJyPgpfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj4KS29oYS1kZXZlbCBtYWlsaW5nIGxpc3Q8
YnI+CjxhIGhyZWY9Im1haWx0bzpLb2hhLWRldmVsQGxpc3RzLmtvaGEub3JnIiB0YXJnZXQ9Il9i
bGFuayI+S29oYS1kZXZlbEBsaXN0cy5rb2hhLm9yZzwvYT48YnI+CjxhIGhyZWY9Imh0dHA6Ly9s
aXN0cy5rb2hhLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2tvaGEtZGV2ZWwiIHRhcmdldD0iX2JsYW5r
Ij5odHRwOi8vbGlzdHMua29oYS5vcmcvbWFpbG1hbi9saXN0aW5mby9rb2hhLWRldmVsPC9hPjwv
cD4KCjwvZGl2PgoKPHAgY2xhc3M9Ik1zb05vcm1hbCI+oDwvcD4KCjwvZGl2PgoKPC9kaXY+Cgo8
L2Rpdj48L2Rpdj48L2Rpdj48ZGl2PjxkaXY+PC9kaXY+PGRpdiBjbGFzcz0iaDUiPgoKPHByZT48
L3ByZT4KCjxkaXY+Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLTxicj4KVGhpcyBlbWFpbCBtZXNzYWdlLCBpbmNsdWRpbmcgYW55IGF0
dGFjaG1lbnRzLCBpcyBmb3IgdGhlIHNvbGUgdXNlIG9mIHRoZSBpbnRlbmRlZCByZWNpcGllbnQo
cykgYW5kIG1heSBjb250YWluIGluZm9ybWF0aW9uIHRoYXQgaXMgcHJvcHJpZXRhcnksIGNvbmZp
ZGVudGlhbCwgYW5kIGV4ZW1wdCBmcm9tIGRpc2Nsb3N1cmUgdW5kZXIgYXBwbGljYWJsZSBsYXcu
IEFueSB1bmF1dGhvcml6ZWQgcmV2aWV3LCB1c2UsIGRpc2Nsb3N1cmUsIG9yIGRpc3RyaWJ1dGlv
biBpcyBwcm9oaWJpdGVkLiBJZiB5b3UgaGF2ZSByZWNlaXZlZCB0aGlzIGVtYWlsIGluIGVycm9y
IHBsZWFzZSBub3RpZnkgdGhlIHNlbmRlciBieSByZXR1cm4gZW1haWwgYW5kIGRlbGV0ZSB0aGUg
b3JpZ2luYWwgbWVzc2FnZS4gUGxlYXNlIG5vdGUsIHRoZSByZWNpcGllbnQgc2hvdWxkIGNoZWNr
IHRoaXMgZW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBmb3IgdGhlIHByZXNlbmNlIG9mIHZpcnVz
ZXMuIFRoZSBvcmdhbml6YXRpb24gYWNjZXB0cyBubyBsaWFiaWxpdHkgZm9yIGFueSBkYW1hZ2Ug
Y2F1c2VkIGJ5IGFueSB2aXJ1cyB0cmFuc21pdHRlZCBieSB0aGlzIGVtYWlsLjxicj4KCgo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPC9kaXY+Cgo8cHJlPjwvcHJlPjwvZGl2Pjwv
ZGl2PjwvZGl2PgoKCjwvYmxvY2txdW90ZT48L2Rpdj48YnI+PC9kaXY+Cg==

--===============4334149956111633385==--


From clay.fouts@liblime.com Wed Feb 17 21:16:26 2010
From: Clay Fouts 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Wed, 17 Feb 2010 12:15:59 -0800
Message-ID: <192a1aab1002171215o3675e6aap670ae8a993a87c8e@mail.gmail.com>
In-Reply-To: <4B7C4D44.5030701@tamil.fr>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============4542037319675972825=="

--===============4542037319675972825==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Definitely. Even though the session table may in many cases be much smaller
than other tables in terms of bytes or rows, the frequency at which it is
written to causes it to be heavily fragmented on the disk, which greatly
reduces the average throughput during a mysqldump, increasing the backup
time.


On Wed, Feb 17, 2010 at 12:10 PM, Frederic Demians wrote:

> And since you must backup daily your Koha DB, you should truncate
> sessions table just before mysqldump-ing in order to backup as few
> sessions data as possible.
> --
> Frédéric
>
> _______________________________________________
> Koha-devel mailing list
> Koha-devel@lists.koha.org
> http://lists.koha.org/mailman/listinfo/koha-devel
>



--===============4542037319675972825==
Content-Type: text/html
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="attachment.html"
MIME-Version: 1.0

PGRpdj5EZWZpbml0ZWx5LiBFdmVuIHRob3VnaCB0aGUgc2Vzc2lvbiB0YWJsZSBtYXkgaW4gbWFu
eSBjYXNlcyBiZSBtdWNoIHNtYWxsZXIgdGhhbiBvdGhlciB0YWJsZXMgaW4gdGVybXMgb2YgYnl0
ZXMgb3Igcm93cywgdGhlIGZyZXF1ZW5jeSBhdCB3aGljaCBpdCBpcyB3cml0dGVuIHRvIGNhdXNl
cyBpdCB0byBiZSBoZWF2aWx5IGZyYWdtZW50ZWQgb24gdGhlIGRpc2ssIHdoaWNoIGdyZWF0bHkg
cmVkdWNlcyB0aGUgYXZlcmFnZSB0aHJvdWdocHV0IGR1cmluZyBhIG15c3FsZHVtcCwgaW5jcmVh
c2luZyB0aGUgYmFja3VwIHRpbWUuPC9kaXY+Cgo8YnI+PGJyPjxkaXYgY2xhc3M9ImdtYWlsX3F1
b3RlIj5PbiBXZWQsIEZlYiAxNywgMjAxMCBhdCAxMjoxMCBQTSwgRnJlZGVyaWMgRGVtaWFucyA8
c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0bzpmcmVkZXJpY0B0YW1pbC5mciI+ZnJl
ZGVyaWNAdGFtaWwuZnI8L2E+Jmd0Ozwvc3Bhbj4gd3JvdGU6PGJyPjxibG9ja3F1b3RlIGNsYXNz
PSJnbWFpbF9xdW90ZSIgc3R5bGU9Im1hcmdpbjowIDAgMCAuOGV4O2JvcmRlci1sZWZ0OjFweCAj
Y2NjIHNvbGlkO3BhZGRpbmctbGVmdDoxZXg7Ij4KCkFuZCBzaW5jZSB5b3UgbXVzdCBiYWNrdXAg
ZGFpbHkgeW91ciBLb2hhIERCLCB5b3Ugc2hvdWxkIHRydW5jYXRlPGJyPgpzZXNzaW9ucyB0YWJs
ZSBqdXN0IGJlZm9yZSBteXNxbGR1bXAtaW5nIGluIG9yZGVyIHRvIGJhY2t1cCBhcyBmZXc8YnI+
CnNlc3Npb25zIGRhdGEgYXMgcG9zc2libGUuPGJyPgo8Zm9udCBjb2xvcj0iIzg4ODg4OCI+LS08
YnI+CkZy6WTpcmljPGJyPgo8L2ZvbnQ+PGRpdj48ZGl2PjwvZGl2PjxkaXYgY2xhc3M9Img1Ij48
YnI+Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fPGJyPgpL
b2hhLWRldmVsIG1haWxpbmcgbGlzdDxicj4KPGEgaHJlZj0ibWFpbHRvOktvaGEtZGV2ZWxAbGlz
dHMua29oYS5vcmciPktvaGEtZGV2ZWxAbGlzdHMua29oYS5vcmc8L2E+PGJyPgo8YSBocmVmPSJo
dHRwOi8vbGlzdHMua29oYS5vcmcvbWFpbG1hbi9saXN0aW5mby9rb2hhLWRldmVsIiB0YXJnZXQ9
Il9ibGFuayI+aHR0cDovL2xpc3RzLmtvaGEub3JnL21haWxtYW4vbGlzdGluZm8va29oYS1kZXZl
bDwvYT48YnI+CjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48L2Rpdj48YnI+Cg==

--===============4542037319675972825==--


From paul.poulain@biblibre.com Thu Feb 18 11:06:07 2010
From: Paul Poulain 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 11:05:56 +0100
Message-ID: <4B7D1104.9080000@biblibre.com>
In-Reply-To: <606aab811002171210g3950778ej852c181146d252b2@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============2553557576424755842=="

--===============2553557576424755842==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Le 17/02/2010 21:10, Chris Cormack a écrit :
> 2010/2/18 Clay Fouts :
>   
>> It depends, actually. For tables without FK constraints (like Koha's
>> "sessions"), truncation is instantaneous in MySQL.
>>
>>     
> Not when they tried it yesterday :-)
>
> It does depend, InnoDB can do some strange things.
>   
including not freeing space in the file system even if you truncate the
table :(

-- 
Paul POULAIN
http://www.biblibre.com
Expert en Logiciels Libres pour l'info-doc
Tel : (33) 4 91 81 35 08


--===============2553557576424755842==--


From cnighswonger@foundations.edu Thu Feb 18 12:47:57 2010
From: Chris Nighswonger 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 06:47:16 -0500
Message-ID: 
In-Reply-To: <4B7D1104.9080000@biblibre.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============3031107184045709281=="

--===============3031107184045709281==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Feb 18, 2010 at 5:05 AM, Paul Poulain  wro=
te:
> Le 17/02/2010 21:10, Chris Cormack a =C3=A9crit :
>> 2010/2/18 Clay Fouts :
>>
>>> It depends, actually. For tables without FK constraints (like Koha's
>>> "sessions"), truncation is instantaneous in MySQL.
>>>
>>>
>> Not when they tried it yesterday :-)
>>
>> It does depend, InnoDB can do some strange things.
>>
> including not freeing space in the file system even if you truncate the
> table :(

Ouch! this would seem to be a mysql bug. Is there no way to ensure the
drive space is freed up?

Kind Regards,
Chris

--===============3031107184045709281==--


From gmcharlt@gmail.com Thu Feb 18 13:43:14 2010
From: Galen Charlton 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 07:42:44 -0500
Message-ID: <66bd34b51002180442jf85751bo3cba1eb65abd7404@mail.gmail.com>
In-Reply-To: 
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============1724246248206168264=="

--===============1724246248206168264==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit

Hi,

On Thu, Feb 18, 2010 at 6:47 AM, Chris Nighswonger
 wrote:
>> including not freeing space in the file system even if you truncate the
>> table :(
>
> Ouch! this would seem to be a mysql bug. Is there no way to ensure the
> drive space is freed up?

It's an issue with the InnoDB storage engine, not MySQL per se.
However, reclaiming space is easy enough, since by default a separate
InnoDB file is created for each table: just drop and recreate the
sessions table.  You can also use MyISAM instead of InnoDB for that
table.

Regards,

Galen
-- 
Galen Charlton
gmcharlt@gmail.com

--===============1724246248206168264==--


From colin.campbell@ptfs-europe.com Thu Feb 18 13:46:40 2010
From: Colin Campbell 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 12:45:25 +0000
Message-ID: <4B7D3665.5000309@ptfs-europe.com>
In-Reply-To: 
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============4101265915249644653=="

--===============4101265915249644653==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

On 18/02/10 11:47, Chris Nighswonger wrote:
> On Thu, Feb 18, 2010 at 5:05 AM, Paul Poulain  w=
rote:
>> Le 17/02/2010 21:10, Chris Cormack a =C3=A9crit :
>>> 2010/2/18 Clay Fouts:
>>>
>>>> It depends, actually. For tables without FK constraints (like Koha's
>>>> "sessions"), truncation is instantaneous in MySQL.
>>>>
>>>>
>>> Not when they tried it yesterday :-)
>>>
>>> It does depend, InnoDB can do some strange things.
>>>
>> including not freeing space in the file system even if you truncate the
>> table :(
>
> Ouch! this would seem to be a mysql bug. Is there no way to ensure the
> drive space is freed up?
mysql says no
http://bugs.mysql.com/bug.php?id=3D1287

If you have everything in one ibdata file it can be difficult to recover=20
space.

Colin


--=20
Colin Campbell
Chief Software Engineer,
PTFS Europe Limited
Content Management and Library Solutions
+44 (0) 208 366 1295 (phone)
+44 (0) 7759 633626  (mobile)
colin.campbell@ptfs-europe.com
skype: colin_campbell2

http://www.ptfs-europe.com

--===============4101265915249644653==--


From nahuel.angelinetti@biblibre.com Thu Feb 18 13:47:52 2010
From: Nahuel ANGELINETTI 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 13:46:51 +0100
Message-ID: <4B7D36BB.2040801@biblibre.com>
In-Reply-To: <66bd34b51002180442jf85751bo3cba1eb65abd7404@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============3867619131879756004=="

--===============3867619131879756004==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Hi,

Le 18/02/2010 13:42, Galen Charlton a écrit :
> Hi,
>
> On Thu, Feb 18, 2010 at 6:47 AM, Chris Nighswonger
>   wrote:
>    
>>> including not freeing space in the file system even if you truncate the
>>> table :(
>>>        
>> Ouch! this would seem to be a mysql bug. Is there no way to ensure the
>> drive space is freed up?
>>      
> It's an issue with the InnoDB storage engine, not MySQL per se.
> However, reclaiming space is easy enough, since by default a separate
> InnoDB file is created for each table: just drop and recreate the
> sessions table.  You can also use MyISAM instead of InnoDB for that
> table.
>
>    

Usually, in all our installs we change the engine for "session" and 
"zebraqueue" tables to MyISAM. And add a cronjob that clean the both 
tables every night.

bests,

-- 
Nahuel ANGELINETTI


--===============3867619131879756004==--


From gmcharlt@gmail.com Thu Feb 18 13:54:06 2010
From: Galen Charlton 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 07:53:25 -0500
Message-ID: <66bd34b51002180453t83aeddenfef8652ecd49803c@mail.gmail.com>
In-Reply-To: <4B7D3665.5000309@ptfs-europe.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============1524639896650954840=="

--===============1524639896650954840==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit

Hi,

On Thu, Feb 18, 2010 at 7:45 AM, Colin Campbell
 wrote:
> If you have everything in one ibdata file it can be difficult to recover
> space.

Yes, that's why is a good idea to use a separate file for each InnoDB
table; you can enable this by turning on the innodb_file_per_table
option in the MySQL configuration file.  If you're using a single
InnoDB tablespace now, however, making the switch would involve either
dropping and recreating the database from a mysqldump or loading the
data into a new database or a replicate, pointing Koha to it, and
dropping the old database.

Regards,

Galen
-- 
Galen Charlton
gmcharlt@gmail.com

--===============1524639896650954840==--


From colin.campbell@ptfs-europe.com Thu Feb 18 13:56:20 2010
From: Colin Campbell 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 12:55:40 +0000
Message-ID: <4B7D38CC.6020306@ptfs-europe.com>
In-Reply-To: <66bd34b51002180442jf85751bo3cba1eb65abd7404@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============8188269482499348500=="

--===============8188269482499348500==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit

On 18/02/10 12:42, Galen Charlton wrote:

> However, reclaiming space is easy enough, since by default a separate
> InnoDB file is created for each table: just drop and recreate the
> sessions table.  You can also use MyISAM instead of InnoDB for that
> table.
I'm not sure it is the default. It requires innodb_file_per_table to be 
set in your config (some distributions may do that for you).

Colin (who has cursed this feature when freeing up space in the early 
hours of the morning in the past)

-- 
Colin Campbell
Chief Software Engineer,
PTFS Europe Limited
Content Management and Library Solutions
+44 (0) 208 366 1295 (phone)
+44 (0) 7759 633626  (mobile)
colin.campbell@ptfs-europe.com
skype: colin_campbell2

http://www.ptfs-europe.com

--===============8188269482499348500==--


From cnighswonger@foundations.edu Thu Feb 18 14:07:17 2010
From: Chris Nighswonger 
To: koha-devel@lists.koha-community.org
Subject: Re: [Koha-devel] Koha sessions table is ridiculously huge
Date: Thu, 18 Feb 2010 08:06:49 -0500
Message-ID: 
In-Reply-To: <4B7D36BB.2040801@biblibre.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============0680896460299399267=="

--===============0680896460299399267==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

On Thu, Feb 18, 2010 at 7:46 AM, Nahuel ANGELINETTI
 wrote:
> Hi,
>
> Le 18/02/2010 13:42, Galen Charlton a écrit :
>>
>> Hi,
>>
>> On Thu, Feb 18, 2010 at 6:47 AM, Chris Nighswonger
>>   wrote:
>>
>>>>
>>>> including not freeing space in the file system even if you truncate the
>>>> table :(
>>>>
>>>
>>> Ouch! this would seem to be a mysql bug. Is there no way to ensure the
>>> drive space is freed up?
>>>
>>
>> It's an issue with the InnoDB storage engine, not MySQL per se.
>> However, reclaiming space is easy enough, since by default a separate
>> InnoDB file is created for each table: just drop and recreate the
>> sessions table.  You can also use MyISAM instead of InnoDB for that
>> table.
>>
>>
>
> Usually, in all our installs we change the engine for "session" and
> "zebraqueue" tables to MyISAM. And add a cronjob that clean the both tables
> every night.

It sounds to me like we ought to consider changing the engine for
these tables in kohastructure.sql.

Kind Regards,
Chris

--===============0680896460299399267==--