0 votes
115 views

I am running a crossmatching code in a Jupyter notebook that I have used many times before. Now I get the error: Error: function public.q3c_ang2ipix(double precision, double precision) does not exist

HINT:  No function matches the given name and argument types. You might need to add explicit type casts.
CONTEXT:  remote SQL command: EXPLAIN SELECT ra, "dec" FROM mydb.ref_all WHERE ((((public.q3c_ang2ipix(((SELECT null::double precision)::double precision),

I use variations of this code in several notebooks, and I get this error in all of them. 

I'm using the 2.22.1 version of the datalab package and Python 3.12.1

One example of a code where I get the error is:

delve_query = '''SELECT  bg.*, l.quick_object_id as delve_id, l.mag_psf_g as delve_g, l.mag_psf_r as delve_r, l.mag_psf_i as delve_i,l.extended_class_g,l.extended_class_r,l.extended_class_i, 

                (q3c_dist(bg.ra,bg.dec,l.ra,l.dec)*3600.0) as delve_angDist

         FROM mydb://ref_all AS bg, 

              delve_dr2.objects AS l 

         WHERE q3c_join(bg.ra, bg.dec, l.ra, l.dec, {})'''.format(rad/3600)

# Get the result as a dataframe

df_del = convert(qc.query(sql=delve_query))

Can anyone see what the problem might be?

by sigridhn (130 points)
edited by 0 | 115 views

1 Answer

+1 vote
Hi, it should be working again. We had to temporarily switch to a backup DB machine, where these functions were not activated for MyDB. Could you please try again and let us know if you still encounter the issue?
by robertdemo (8.9k points)
It works again :) Thank you!

449 questions

463 answers

473 comments

658 users

Welcome to Data Lab Help Desk, where you can ask questions and receive answers from other members of the community.

Categories