eu-emi / emiregistry

EMI Registry (EMIR): A Registry for Federated Grid Infrastructures
www.eu-emi.eu
6 stars 0 forks source link

Don't get exception during the update when the entry does not exist in the DB #64

Closed szigetigabor closed 12 years ago

szigetigabor commented 12 years ago

The server don't store an entry and get error message about the update problem but try to forward the update message to the parent or neighbors.

logs: 2012-07-27 10:52:14,295 285 [qtp238689990-14] DEBUG emir.core.ServiceAdminResource - updating service by ID: urn:ogf:Endpoint:piff.hep.lu.se:ldapglue2:2135,GLUE2ServiceID=urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue, Owned by: 1.2.840.113549.1.9.1=#1613656d69726567697374727940757365722e6575,CN=EMIRegistry-Demo-User,OU=JSC,O=Forschungszentrum Juelich GmbH,L=Juelich,C=DE 2012-07-27 10:52:14,297 214 [qtp238689990-14] DEBUG emir.core.ServiceAdminManager - The expiry attribute is missing from the updated service information. The information will be expired in 1day from now 2012-07-27 10:52:14,298 322 [qtp238689990-14] DEBUG emir.db.MongoDBServiceDatabase - updating service description: {"Service_ID":"urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue","Service_Endpoint_ID":"urn:ogf:Endpoint:piff.hep.lu.se:ldapglue2:2135,GLUE2ServiceID=urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue","Service_Endpoint_URL":"ldap:\/\/piff.hep.lu.se:2135\/o=glue","Service_Name":"service_name2","Service_Type":"service_type","Service_Endpoint_Capability":["capability"],"Service_Endpoint_Technology":"technology","Service_Endpoint_InterfaceName":"iface_name","Service_Endpoint_InterfaceVersion":"iface_version","serviceOwner":"1.2.840.113549.1.9.1=#1613656d69726567697374727940757365722e6575,CN=EMIRegistry-Demo-User,OU=JSC,O=Forschungszentrum Juelich GmbH,L=Juelich,C=DE","Service_ExpireOn":{"$date":"2012-07-28T08:52:14.297Z"},"Service_CreationTime":{"$date":"2012-07-27T08:52:14.298Z"},"updateSince":{"$date":"2012-07-27T08:52:14.298Z"}} 2012-07-27 10:52:14,309 337 [qtp238689990-14] INFO emir.db.MongoDBServiceDatabase - updated Service Endpoint Record with ID: urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue 2012-07-27 10:52:14,309 285 [qtp238689990-14] DEBUG emir.core.ServiceAdminResource - updating service by ID: urn:ogf:Endpoint:piff.hep.lu.se:ldapng:2135,GLUE2ServiceID=urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue, Owned by: 1.2.840.113549.1.9.1=#1613656d69726567697374727940757365722e6575,CN=EMIRegistry-Demo-User,OU=JSC,O=Forschungszentrum Juelich GmbH,L=Juelich,C=DE 2012-07-27 10:52:14,310 214 [qtp238689990-14] DEBUG emir.core.ServiceAdminManager - The expiry attribute is missing from the updated service information. The information will be expired in 1day from now 2012-07-27 10:52:14,311 322 [qtp238689990-14] DEBUG emir.db.MongoDBServiceDatabase - updating service description: {"Service_ID":"urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue","Service_Endpoint_ID":"urn:ogf:Endpoint:piff.hep.lu.se:ldapng:2135,GLUE2ServiceID=urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue","Service_Endpoint_URL":"ldap:\/\/piff.hep.lu.se:2135\/Mds-Vo-Name=local,o=grid","Service_Name":"service_name2","Service_Type":"service_type","Service_Endpoint_Capability":["capability"],"Service_Endpoint_Technology":"technology","Service_Endpoint_InterfaceName":"iface_name","Service_Endpoint_InterfaceVersion":"iface_version","serviceOwner":"1.2.840.113549.1.9.1=#1613656d69726567697374727940757365722e6575,CN=EMIRegistry-Demo-User,OU=JSC,O=Forschungszentrum Juelich GmbH,L=Juelich,C=DE","Service_ExpireOn":{"$date":"2012-07-28T08:52:14.310Z"},"Service_CreationTime":{"$date":"2012-07-27T08:52:14.310Z"},"updateSince":{"$date":"2012-07-27T08:52:14.311Z"}} 2012-07-27 10:52:14,313 337 [qtp238689990-14] INFO emir.db.MongoDBServiceDatabase - updated Service Endpoint Record with ID: urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue 2012-07-27 10:52:14,335 250 [emir-executor-4] DEBUG emir.core.Filters - The value (Service_Name) was not JSONArray. 2012-07-27 10:52:14,335 270 [emir-executor-4] DEBUG emir.core.Filters - The value (Service_Name) was not simple Array. 2012-07-27 10:52:14,336 250 [emir-executor-4] DEBUG emir.core.Filters - The value (Service_Name) was not JSONArray. 2012-07-27 10:52:14,336 270 [emir-executor-4] DEBUG emir.core.Filters - The value (Service_Name) was not simple Array. 2012-07-27 10:52:14,336 133 [emir-executor-4] DEBUG emir.core.ServiceEventReceiver - service update event fired 2012-07-27 10:52:14,353 216 [emir-executor-4] DEBUG emir.core.InfrastructureManager - handleUpdate called... 2012-07-27 10:52:14,353 219 [emir-executor-4] DEBUG emir.core.InfrastructureManager - next ID by the Update: urn:ogf:Endpoint:piff.hep.lu.se:ldapglue2:2135,GLUE2ServiceID=urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue 2012-07-27 10:52:14,354 219 [emir-executor-4] DEBUG emir.core.InfrastructureManager - next ID by the Update: urn:ogf:Endpoint:piff.hep.lu.se:ldapng:2135,GLUE2ServiceID=urn:ogf:Service:piff.hep.lu.se:aris,GLUE2GroupID=resource,o=glue

szigetigabor commented 12 years ago

Maybe this will be solve the problems: http://api.mongodb.org/java/2.8.0/com/mongodb/DBCollection.html#update%28com.mongodb.DBObject,%20com.mongodb.DBObject,%20boolean,%20boolean,%20com.mongodb.WriteConcern%29

Create an entry if it does not exist.

amemon commented 12 years ago

Strangely, this is simultaneously a bug and a feature too. why?

szigetigabor commented 12 years ago

1.2.0 release solve this bug.