GraceDB Server issueshttps://git.ligo.org/computing/gracedb/server/-/issues2018-09-25T15:13:14Zhttps://git.ligo.org/computing/gracedb/server/-/issues/70Critical unit tests2018-09-25T15:13:14ZTanner PrestegardCritical unit testsWe need unit tests for checking permissions for superevents. We have to check all API "actions", views, etc. and all web views.We need unit tests for checking permissions for superevents. We have to check all API "actions", views, etc. and all web views.Move superevents branch onto production GraceDBhttps://git.ligo.org/computing/gracedb/server/-/issues/94Update superevent pages2018-11-30T17:20:16ZTanner PrestegardUpdate superevent pagesWe need to make some changes to what information is shown on various pages (search results, superevent detail page, etc.), both for authenticated users and for public users. We also need to make changes for how superevents are serialize...We need to make some changes to what information is shown on various pages (search results, superevent detail page, etc.), both for authenticated users and for public users. We also need to make changes for how superevents are serialized for public users. Probably want to make a new serializer and select based on user authentication status.
More information to come.Public-facing GraceDBhttps://git.ligo.org/computing/gracedb/server/-/issues/93Test event API access2018-11-27T16:59:27ZTanner PrestegardTest event API accessWe need to do some testing of how access is handled for the events API. But I am not sure that we have time for developing a complete set of unit tests at present. And, since we actually don't want to allow *any* public access to the e...We need to do some testing of how access is handled for the events API. But I am not sure that we have time for developing a complete set of unit tests at present. And, since we actually don't want to allow *any* public access to the events API, that helps simplify things.
For now, I think we should just add the `IsAuthenticated` permission and write a few simple unit tests which loop over the events API urls and make sure that unauthenticated attempts to get to them fail.Public-facing GraceDBhttps://git.ligo.org/computing/gracedb/server/-/issues/29GraceDb.writeLog raises BadStatusLine error (when GraceDb is overwhelmed?)2019-04-16T22:01:13ZTanner PrestegardGraceDb.writeLog raises BadStatusLine error (when GraceDb is overwhelmed?)Created by Leo Singer on January 17, 2017. Copied from redmine (https://bugs.ligo.org/redmine/issues/5018)
I can very reliably get ligo.gracedb.rest.GraceDb.writeLog() to raise a BadStatusLine error by submitting several test events and...Created by Leo Singer on January 17, 2017. Copied from redmine (https://bugs.ligo.org/redmine/issues/5018)
I can very reliably get ligo.gracedb.rest.GraceDb.writeLog() to raise a BadStatusLine error by submitting several test events and running BAYESTAR on all of them simultaneously. At least one of the jobs will usually die with the traceback below.
This may be a random error, or it may be related to the high rate of GraceDb log message uploads that this entails. Note that in order to get a useful traceback you will first have to apply Merge Request !6. I suggest pointing the rest and cli interfaces to the gracedb-test server so as not to overwhelm the production server when running this code.
```
$ for x in {1..5}; do ((graceid=$(gracedb Test MBTAOnline AllSky coinc.xml); gracedb upload -t psd $graceid psd.xml.gz && bayestar_localize_lvalert $graceid)&); done
...
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib64/python2.7/threading.py", line 811, in __bootstrap_inner
self.run()
File "/usr/lib64/python2.7/threading.py", line 764, in run
self.__target(*self.__args, **self.__kwargs)
File "/mnt/qfs3/lsinger/local/lib/python2.7/site-packages/ligo/gracedb/logging.py", line 70, in _run
self._gracedb.writeLog(self._graceid, text)
File "/mnt/qfs3/lsinger/local/lib/python2.7/site-packages/ligo/gracedb/rest.py", line 759, in writeLog
'displayName': displayName}, files=files)
File "/mnt/qfs3/lsinger/local/lib/python2.7/site-packages/ligo/gracedb/rest.py", line 347, in post
return self.post_or_put("POST", *args, **kwargs)
File "/mnt/qfs3/lsinger/local/lib/python2.7/site-packages/ligo/gracedb/rest.py", line 372, in post_or_put
return self.request(method, url, body, headers)
File "/mnt/qfs3/lsinger/local/lib/python2.7/site-packages/ligo/gracedb/rest.py", line 480, in request
return GsiRest.request(self, method, *args, **kwargs)
File "/mnt/qfs3/lsinger/local/lib/python2.7/site-packages/ligo/gracedb/rest.py", line 316, in request
response = self.get_response(conn)
File "/mnt/qfs3/lsinger/local/lib/python2.7/site-packages/ligo/gracedb/rest.py", line 265, in get_response
return conn.getresponse()
File "/usr/lib64/python2.7/httplib.py", line 1089, in getresponse
response.begin()
File "/usr/lib64/python2.7/httplib.py", line 444, in begin
version, status, reason = self._read_status()
File "/usr/lib64/python2.7/httplib.py", line 408, in _read_status
raise BadStatusLine(line)
BadStatusLine: ''
```
I'm guessing that this is a server-side issue and the django log will be more informative.https://git.ligo.org/computing/gracedb/server/-/issues/102Certificate challenge2019-02-21T05:23:08ZTanner PrestegardCertificate challengeUsers who have certificates in their browsers will receive a certificate challenge when they go to anything under `/api/`. The certificate should *not* be required, but it's pretty annoying and most users won't know to just hit cancel (...Users who have certificates in their browsers will receive a certificate challenge when they go to anything under `/api/`. The certificate should *not* be required, but it's pretty annoying and most users won't know to just hit cancel (if they try to submit an invalid certificate, they will not be allowed access).
This is also happening on the main web view pages because the javascript makes calls to the API to get some information.https://git.ligo.org/computing/gracedb/server/-/issues/99API endpoints for getting user details2019-02-21T05:24:50ZTanner PrestegardAPI endpoints for getting user detailsI'd like to add two new API endpoints:
* One for a quick "whoami" check that just responds with the username
* Another with more details, like their group memberships, first/last name, permissions, etc.I'd like to add two new API endpoints:
* One for a quick "whoami" check that just responds with the username
* Another with more details, like their group memberships, first/last name, permissions, etc.https://git.ligo.org/computing/gracedb/server/-/issues/74Versioning of VOEvent information2022-08-03T19:01:01ZTanner PrestegardVersioning of VOEvent informationOn the low-latency call today, there was discussion about what information should be used to build a VOEvent and whether we can do some sort of versioning of this information, presumably so that VOEvents can be built using "past" informa...On the low-latency call today, there was discussion about what information should be used to build a VOEvent and whether we can do some sort of versioning of this information, presumably so that VOEvents can be built using "past" information. This issue attempts to track the discussion and come up with a list of solutions.
The problem at hand was framed as:
* How do we store the information about what content should be used in building a VOEvent?
* How do we populate that content when building a VOEvent?
* How do we access that content?
Another way of framing it is:
* All content from a superevent which is used to build a VOEvent should be versioned/tracked.