Re: Session file locking not working properly in multithreaded environment
Tim Roberts <[email protected]> Fri, 10 May 2019 10:31:24 -0700
| Newsgroups | gmane.comp.python.cherrypy |
|---|---|
| Organization | Providenza & Boekelheide, Inc. |
| Message-ID | <[email protected]> |
This is a cryptographically signed message in MIME format. --------------ms070108060604010205060004 Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: quoted-printable Content-Language: en-US Ralph Heinkel wrote: > I'm not completely convinced that this is true. Here is an example=20 > where a second lock on the same file fails within the same thread: > ... > Only if lock2 was obtained from fp1.fileno() then no exception would=20 > have been raised. As soon as a separate file descriptor (for the same=20 > file) is used a second lock also fails. > But this is exaclty the point that makes me wonder why it then works=20 > in cherrypy. From the log you can see that each thread uses a=20 > different file descriptor for the lock file, so it should fail there=20 > as well...=C2=A0 I'm still puzzled. Yes, you're right.=C2=A0 The behavior I described is only true if you try t= o=20 flock the same file descriptor, or file descriptors that are "dup"s of=20 each other.=C2=A0 If the file descriptors came from two separate opens, the= n=20 the flock should work. The zc.lockfile I'm looking at certainly opens a new fd each time, but=20 the source I'm looking at doesn't have a UnixLockFile class, as your log=20 shows. Your log shows to calls to _lock_file, but it doesn't show that the both=20 succeed.=C2=A0 Do they? --=20 Tim Roberts, [email protected] Providenza & Boekelheide, Inc. --=20 You received this message because you are subscribed to the Google Groups "= cherrypy-users" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to cherrypy-users+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected] To post to this group, send email to cherrypy-users-/JYPxA39Uh5TLH3MbocFF+G/[email protected] Visit this group at https://groups.google.com/group/cherrypy-users. To view this discussion on the web visit https://groups.google.com/d/msgid/= cherrypy-users/4244c768-db58-011b-2a64-edba1bcedb38%40probo.com. For more options, visit https://groups.google.com/d/optout. --------------ms070108060604010205060004 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC CxUwggUnMIIED6ADAgECAhBoP+rRK2CFDztwhYipKhMsMA0GCSqGSIb3DQEBCwUAMIGXMQsw CQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxm b3JkMRowGAYDVQQKExFDT01PRE8gQ0EgTGltaXRlZDE9MDsGA1UEAxM0Q09NT0RPIFJTQSBD bGllbnQgQXV0aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQTAeFw0xODA4MTQwMDAw MDBaFw0xOTA4MTQyMzU5NTlaMB8xHTAbBgkqhkiG9w0BCQEWDnRpbXJAcHJvYm8uY29tMIIB IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvUp6dQDpjqt/rsHjA22dNdGRaEDDl6Os ZFOJdoHyMuiy/x9aKq+p60RdXpSRMu8CwHAj3+2taKdJL8Vn6wOxa0dZpOjUOA0fn2aZ+8U7 jv/Gw0sVHw/3x9I8SUV21vgooRZFBKlFnOqyU8hnWWu93S43YirhLiuNva38BKvbL12Ybv1O i9cc/RFXhrasUrAdgWILYGdOkXllRdrrBC3Ir9cm6xXLdtOeHVEyb2bxr8tccBKlcmBPU7sY vJatEoKh5DDenQKvyN7MYOOAGIrcbffX8AGr4UIC9SGYmJsWeqUJYt/uqhaRaV+ekhywhTgj QIoEp7q3TzaNuak+puAPIQIDAQABo4IB5DCCAeAwHwYDVR0jBBgwFoAUgq9sjPjF/pZhfOgf PStxSF7Ei8AwHQYDVR0OBBYEFETarb5rMaxRP+mRiqAO4L2s9nbSMA4GA1UdDwEB/wQEAwIF oDAMBgNVHRMBAf8EAjAAMCAGA1UdJQQZMBcGCCsGAQUFBwMEBgsrBgEEAbIxAQMFAjARBglg hkgBhvhCAQEEBAMCBSAwRgYDVR0gBD8wPTA7BgwrBgEEAbIxAQIBAQEwKzApBggrBgEFBQcC ARYdaHR0cHM6Ly9zZWN1cmUuY29tb2RvLm5ldC9DUFMwWgYDVR0fBFMwUTBPoE2gS4ZJaHR0 cDovL2NybC5jb21vZG9jYS5jb20vQ09NT0RPUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRT ZWN1cmVFbWFpbENBLmNybDCBiwYIKwYBBQUHAQEEfzB9MFUGCCsGAQUFBzAChklodHRwOi8v Y3J0LmNvbW9kb2NhLmNvbS9DT01PRE9SU0FDbGllbnRBdXRoZW50aWNhdGlvbmFuZFNlY3Vy ZUVtYWlsQ0EuY3J0MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5jb21vZG9jYS5jb20wGQYD VR0RBBIwEIEOdGltckBwcm9iby5jb20wDQYJKoZIhvcNAQELBQADggEBAJnexNN7lzX5o4zI NSG/XReFH6tGTUt4B1dDJeB2oNqOG2QMU2JypG50YvlHYiZb9KguqKQ0ZJEhISi1f0V+McyD bKySqGhBppX68wLSnadRQhFis3le47ZKZIDtbn8OCsTaVTSVIHSMab3Ze86zebOWhL85jA5f rWYzvBuJeiQkCapYTIyCkKGj2csrfEvuOFLFlPR7F83Z4qw33tkYfkPd2NIQ+O9ai0AU2/qM qTnb+c+DoN8HI6j2JWmdK77hlj/KRK2JASI+EvsblEBoiOg3EjzAnQMdBvhxbhgnh+OqjTMX Ra2hJJ11AtjV2QLeujbwS8W0AnlJsd8B6Sf7FQcwggXmMIIDzqADAgECAhBqm+E4O/8ra58B 1dm4p1JWMA0GCSqGSIb3DQEBDAUAMIGFMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRl ciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFDT01PRE8gQ0EgTGlt aXRlZDErMCkGA1UEAxMiQ09NT0RPIFJTQSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0x MzAxMTAwMDAwMDBaFw0yODAxMDkyMzU5NTlaMIGXMQswCQYDVQQGEwJHQjEbMBkGA1UECBMS R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFDT01PRE8g Q0EgTGltaXRlZDE9MDsGA1UEAxM0Q09NT0RPIFJTQSBDbGllbnQgQXV0aGVudGljYXRpb24g YW5kIFNlY3VyZSBFbWFpbCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL6z nlesKHZ1QBbHOAOY08YYdiFQ8yV5C0y1oNF9Olg+nKcxLqf2NHbZhGra0D00SOTq9bus3/mx gUsg/Wh/eXQ0pnp8tZ8XZWAnlyKMpjL+qUByRjXCA6RQyDMqVaVUkbIr5SU0RDX/kSsKwer3 H1pT/HUrBN0X8sKtPTdGX8XAWt/VdMLBrZBlgvnkCos+KQWWCo63OTTqRvaq8aWccm+KOMjT cE6s2mj6RkalweyDI7X+7U5lNo6jzC8RTXtVV4/Vwdax720YpMPJQaDaElmOupyTf1Qib+cp ukNJnQmwygjD8m046DQkLnpXNCAGjuJy1F5NATksUsbfJAr7FLUCAwEAAaOCATwwggE4MB8G A1UdIwQYMBaAFLuvfgI9+qbxPISOre44mOzZMjLUMB0GA1UdDgQWBBSCr2yM+MX+lmF86B89 K3FIXsSLwDAOBgNVHQ8BAf8EBAMCAYYwEgYDVR0TAQH/BAgwBgEB/wIBADARBgNVHSAECjAI MAYGBFUdIAAwTAYDVR0fBEUwQzBBoD+gPYY7aHR0cDovL2NybC5jb21vZG9jYS5jb20vQ09N T0RPUlNBQ2VydGlmaWNhdGlvbkF1dGhvcml0eS5jcmwwcQYIKwYBBQUHAQEEZTBjMDsGCCsG AQUFBzAChi9odHRwOi8vY3J0LmNvbW9kb2NhLmNvbS9DT01PRE9SU0FBZGRUcnVzdENBLmNy dDAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AuY29tb2RvY2EuY29tMA0GCSqGSIb3DQEBDAUA A4ICAQB4XLKBKDRPPO5fVs6fl1bsj6JrF/bz9kkIBtTYLzXN30D+03Hj6OxCDBEaIeNmsBhr JmuubvyE7HtoSmR809AgcYboW+rcTNZ/8u/Hv+GTrNI/AhqX2/kiQNxmgUPt/eJPs92Qclj0 HnVyy9TnSvGkSDU7I5Px+TbO+88G4zipA2psZaWeEykgzClZlPz1FjTCkk77ZXp5cQYYexE6 zeeN4/0OqqoAloFrjAF4o50YJafX8mnahjp3I2Y2mkjhk0xQfhNqbzlLWPoT3m7j7U26u7zg 6swjOq8hITYc3/np5tM5aVyu6t99p17bTbY7+1RTWBviN9YJzK8HxzObXYWBf/L+VGOYNsQD TxAk0Hbvb1j6KjUhg7fO294F29QIhhmiNOr84JHoy+fNLpfvYc/Q9EtFOI5ISYgOxLk3nD/w hbUe9rmEQXLp8MB933Ij474gwwCPUpwv9mj2PMnXoc7mbrS22XUSeTwxCTP9bcmUdp4jmIoW fhQm7X9w/Zgddg+JZ/YnIHOwsGsaTUgj7fIvxqith7DoJC91WJ8Lce3CVJqb1XWeKIJ84F7Y LXZN0oa7TktYgDdmQVxYkZo1c5noaDKH9Oq9cbm/vOYRUM1cWcef20Wkyk5S/GFyyPJwG0fR 1nRas3DqAf4cXxMiEKcff7PNa4M3RGTqH0pWR8p6EjGCBDUwggQxAgEBMIGsMIGXMQswCQYD VQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3Jk MRowGAYDVQQKExFDT01PRE8gQ0EgTGltaXRlZDE9MDsGA1UEAxM0Q09NT0RPIFJTQSBDbGll bnQgQXV0aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIQaD/q0StghQ87cIWIqSoT LDANBglghkgBZQMEAgEFAKCCAlkwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG 9w0BCQUxDxcNMTkwNTEwMTczMTI0WjAvBgkqhkiG9w0BCQQxIgQgb5Em6IUUQNaeEM9WllZe M6CUoyMAw6wOglb50Fz5s4QwbAYJKoZIhvcNAQkPMV8wXTALBglghkgBZQMEASowCwYJYIZI AWUDBAECMAoGCCqGSIb3DQMHMA4GCCqGSIb3DQMCAgIAgDANBggqhkiG9w0DAgIBQDAHBgUr DgMCBzANBggqhkiG9w0DAgIBKDCBvQYJKwYBBAGCNxAEMYGvMIGsMIGXMQswCQYDVQQGEwJH QjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYD VQQKExFDT01PRE8gQ0EgTGltaXRlZDE9MDsGA1UEAxM0Q09NT0RPIFJTQSBDbGllbnQgQXV0 aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIQaD/q0StghQ87cIWIqSoTLDCBvwYL KoZIhvcNAQkQAgsxga+ggawwgZcxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1h bmNoZXN0ZXIxEDAOBgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9ETyBDQSBMaW1pdGVk MT0wOwYDVQQDEzRDT01PRE8gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl IEVtYWlsIENBAhBoP+rRK2CFDztwhYipKhMsMA0GCSqGSIb3DQEBAQUABIIBAIByg7AG7hW7 sRkZXoHvDsqNZUCXkDQ7oy5YlrINYZqvb2bFjG0A6M1oVhYQNCEEc4LR1crNkYpdE55ARWih ccti+HFVF2YZciS0dNw5hSODh/nWMif5sGLnN7v9CML71CuORpsbUHZdfCf2ABO297As1ebc Oa3uhSHZ2ZZjKz60H+45xqSsnvU8E6JxOtwTxZHafZc3ADPTgr2CNsBMOVVKZjmT2cI3a77l K6bsfsaW+g9nOctJhnZFG/z9XGFGK2IOHHD7IZFvvffXNORDMaLDYTrQe4MfaTulhWwq/LyM cerE2ZcMdjGn2LAJ1ILKv6g7dyfmKXEulHm/7tlKewQAAAAAAAA= --------------ms070108060604010205060004--