diff -Nru gsm-2.1.8/debian/changelog gsm-2.2.2/debian/changelog --- gsm-2.1.8/debian/changelog 2018-05-03 11:43:17.000000000 +0000 +++ gsm-2.2.2/debian/changelog 2018-12-21 13:35:57.000000000 +0000 @@ -1,3 +1,10 @@ +gsm (2.2.2-1) bionic; urgency=medium + + [ Gijs Molenaar ] + * New upstream version 2.2.2 + + -- KERN packaging Fri, 21 Dec 2018 15:35:57 +0200 + gsm (2.1.8-1kern1) bionic; urgency=low * Initial release. diff -Nru gsm-2.1.8/gsm/db/functions/create.function.decl2bbsdms.sql gsm-2.2.2/gsm/db/functions/create.function.decl2bbsdms.sql --- gsm-2.1.8/gsm/db/functions/create.function.decl2bbsdms.sql 2018-01-31 11:06:36.000000000 +0000 +++ gsm-2.2.2/gsm/db/functions/create.function.decl2bbsdms.sql 2018-12-07 14:17:21.000000000 +0000 @@ -25,18 +25,18 @@ SET declDD = 0; SET declDDstr = '00'; ELSE - SET declDD = CAST(TRUNCATE(ABS(ideclDEG), 1) AS DOUBLE); + SET declDD = CAST("truncate"(ABS(ideclDEG), 1) AS DOUBLE); SET declDDstr = CONCAT('0', declDD); END IF; ELSE - SET declDD = CAST(TRUNCATE(ABS(ideclDEG), 2) AS DOUBLE); + SET declDD = CAST("truncate"(ABS(ideclDEG), 2) AS DOUBLE); SET declDDstr = CAST(declDD AS VARCHAR(2)); END IF; IF ABS(ideclDEG) < 1 THEN - SET declMM = CAST(TRUNCATE((ABS(ideclDEG) * 60), 2) AS DOUBLE); + SET declMM = CAST("truncate"((ABS(ideclDEG) * 60), 2) AS DOUBLE); ELSE - SET declMM = CAST(TRUNCATE((ABS(ideclDEG) - declDD) * 60, 2) AS DOUBLE); + SET declMM = CAST("truncate"((ABS(ideclDEG) - declDD) * 60, 2) AS DOUBLE); END IF; IF declMM < 10 THEN SET declMMstr = CONCAT('0', declMM); @@ -50,9 +50,9 @@ SET declSS = ROUND((((ABS(ideclDEG) - declDD) * 60) - declMM) * 60, 2); END IF; IF declSS < 10 THEN - SET declSSstr = CAST(CONCAT('0', TRUNCATE(declSS, 4)) AS VARCHAR(5)); + SET declSSstr = CAST(CONCAT('0', "truncate"(declSS, 4)) AS VARCHAR(5)); ELSE - SET declSSstr = CAST(TRUNCATE(declSS, 5) AS VARCHAR(5)); + SET declSSstr = CAST("truncate"(declSS, 5) AS VARCHAR(5)); END IF; IF ideclDEG < 0 THEN diff -Nru gsm-2.1.8/gsm/db/functions/create.function.decl2dms.sql gsm-2.2.2/gsm/db/functions/create.function.decl2dms.sql --- gsm-2.1.8/gsm/db/functions/create.function.decl2dms.sql 2018-01-31 11:06:36.000000000 +0000 +++ gsm-2.2.2/gsm/db/functions/create.function.decl2dms.sql 2018-12-07 14:17:21.000000000 +0000 @@ -13,14 +13,14 @@ DECLARE odecldms VARCHAR(13); IF ABS(ideclDEG) < 10 THEN - SET declDD = CAST(TRUNCATE(ABS(ideclDEG), 1) AS DOUBLE); + SET declDD = CAST("truncate"(ABS(ideclDEG), 1) AS DOUBLE); SET declDDstr = CONCAT('0', declDD); ELSE - SET declDD = CAST(TRUNCATE(ABS(ideclDEG), 2) AS DOUBLE); + SET declDD = CAST("truncate"(ABS(ideclDEG), 2) AS DOUBLE); SET declDDstr = CAST(declDD AS VARCHAR(2)); END IF; - SET declMM = CAST(TRUNCATE((ABS(ideclDEG) - declDD) * 60, 2) AS DOUBLE); + SET declMM = CAST("truncate"((ABS(ideclDEG) - declDD) * 60, 2) AS DOUBLE); IF declMM < 10 THEN SET declMMstr = CONCAT('0', declMM); ELSE @@ -29,9 +29,9 @@ SET declSS = ROUND((((ABS(ideclDEG) - declDD) * 60) - declMM) * 60, 3); IF declSS < 10 THEN - SET declSSstr = CAST(CONCAT('0', TRUNCATE(declSS, 5)) AS VARCHAR(6)); + SET declSSstr = CAST(CONCAT('0', "truncate"(declSS, 5)) AS VARCHAR(6)); ELSE - SET declSSstr = CAST(TRUNCATE(declSS, 6) AS VARCHAR(6)); + SET declSSstr = CAST("truncate"(declSS, 6) AS VARCHAR(6)); END IF; IF ideclDEG < 0 THEN diff -Nru gsm-2.1.8/gsm/db/functions/create.function.getNeighborsInCats.sql gsm-2.2.2/gsm/db/functions/create.function.getNeighborsInCats.sql --- gsm-2.1.8/gsm/db/functions/create.function.getNeighborsInCats.sql 2018-01-31 11:06:36.000000000 +0000 +++ gsm-2.2.2/gsm/db/functions/create.function.getNeighborsInCats.sql 2018-12-07 14:17:21.000000000 +0000 @@ -1,4 +1,4 @@ -DROP FUNCTION getNeighborsInCats; +--DROP FUNCTION getNeighborsInCats; CREATE FUNCTION getNeighborsInCats(itheta DOUBLE ,icatsrcid INT diff -Nru gsm-2.1.8/gsm/db/functions/create.function.ra2bbshms.sql gsm-2.2.2/gsm/db/functions/create.function.ra2bbshms.sql --- gsm-2.1.8/gsm/db/functions/create.function.ra2bbshms.sql 2018-01-31 11:06:36.000000000 +0000 +++ gsm-2.2.2/gsm/db/functions/create.function.ra2bbshms.sql 2018-12-07 14:17:21.000000000 +0000 @@ -15,11 +15,11 @@ IF iraDEG < 15 THEN SET raHHnum = 0; - SET raMMnum = TRUNCATE(iraDEG * 4, 2); + SET raMMnum = "truncate"(iraDEG * 4, 2); SET raSSnum = ROUND(((iraDEG * 4) - raMMnum) * 60, 2); ELSE - SET raHHnum = TRUNCATE(iraDEG / 15, 2); - SET raMMnum = TRUNCATE((iraDEG / 15 - raHHnum) * 60, 2); + SET raHHnum = "truncate"(iraDEG / 15, 2); + SET raMMnum = "truncate"((iraDEG / 15 - raHHnum) * 60, 2); SET raSSnum = ROUND((((iraDEG / 15 - raHHnum) * 60) - raMMnum) * 60, 2); END IF; @@ -36,9 +36,9 @@ END IF; IF raSSnum < 10 THEN - SET raSSstr = CAST(CONCAT('0', TRUNCATE(raSSnum, 4)) AS VARCHAR(5)); + SET raSSstr = CAST(CONCAT('0', "truncate"(raSSnum, 4)) AS VARCHAR(5)); ELSE - SET raSSstr = CAST(TRUNCATE(raSSnum,5) AS VARCHAR(5)); + SET raSSstr = CAST("truncate"(raSSnum,5) AS VARCHAR(5)); END IF; RETURN CONCAT(raHHstr, CONCAT(':', CONCAT(raMMstr, CONCAT(':', raSSstr)))); diff -Nru gsm-2.1.8/gsm/db/functions/create.function.ra2hms.sql gsm-2.2.2/gsm/db/functions/create.function.ra2hms.sql --- gsm-2.1.8/gsm/db/functions/create.function.ra2hms.sql 2018-01-31 11:06:36.000000000 +0000 +++ gsm-2.2.2/gsm/db/functions/create.function.ra2hms.sql 2018-12-07 14:17:21.000000000 +0000 @@ -12,8 +12,8 @@ DECLARE raHHstr, raMMstr VARCHAR(2); DECLARE raSSstr VARCHAR(6); - SET raHHnum = TRUNCATE(iraDEG / 15, 2); - SET raMMnum = TRUNCATE((iraDEG / 15 - raHHnum) * 60, 2); + SET raHHnum = "truncate"(iraDEG / 15, 2); + SET raMMnum = "truncate"((iraDEG / 15 - raHHnum) * 60, 2); SET raSSnum = ROUND((((iraDEG / 15 - raHHnum) * 60) - raMMnum) * 60, 3); IF raHHnum < 10 THEN @@ -29,9 +29,9 @@ END IF; IF raSSnum < 10 THEN - SET raSSstr = CAST(CONCAT('0', TRUNCATE(raSSnum, 5)) AS VARCHAR(6)); + SET raSSstr = CAST(CONCAT('0', "truncate"(raSSnum, 5)) AS VARCHAR(6)); ELSE - SET raSSstr = CAST(TRUNCATE(raSSnum,6) AS VARCHAR(6)); + SET raSSstr = CAST("truncate"(raSSnum,6) AS VARCHAR(6)); END IF; RETURN CONCAT(raHHstr, CONCAT(':', CONCAT(raMMstr, CONCAT(':', raSSstr)))); diff -Nru gsm-2.1.8/gsm/db/load/load.cat.wenss.sql gsm-2.2.2/gsm/db/load/load.cat.wenss.sql --- gsm-2.1.8/gsm/db/load/load.cat.wenss.sql 2018-01-31 11:06:36.000000000 +0000 +++ gsm-2.2.2/gsm/db/load/load.cat.wenss.sql 2018-12-07 14:17:21.000000000 +0000 @@ -16,7 +16,13 @@ *+-------------------------------------------------------------------+ *| Open Questions/TODOs: | *| (1) If we dump the default wenss data into a file, we can use that| - *} for even faster load. | + *| for even faster load. | + *+-------------------------------------------------------------------+ + *| Since Aug2018 the when statement in combination with a division | + *| causes an error in rel_optimizer.c:2755. | + *| Until fix, we have a work-around. Note the rewrite of 1/sin^2 x as| + *| 1 + cot^2 x and that the sqrt and a_I^2 division are now outside | + *| the when statement. | *+-------------------------------------------------------------------+ */ DECLARE icatid_main, icatid_pole INT; @@ -112,62 +118,81 @@ ,i_int_avg_err ,frame ) - SELECT aorig_catsrcid - ,CONCAT(TRIM(aname), af_name) + SELECT orig_catsrcid + ,catsrcname + ,cat_id + ,band + ,ra + ,decl + ,zone + ,SQRT(t.ra_err_inter / (t.a_I * t.a_I)) AS ra_err + ,SQRT(t.decl_err_inter / (t.a_I * t.a_I)) AS decl_err + ,freq_eff + ,x + ,y + ,z + ,src_type + ,fit_probl + ,pa + ,major + ,minor + ,i_peak_avg + ,i_peak_avg_err + ,i_int_avg + ,i_int_avg_err + ,frame + FROM ( + SELECT aorig_catsrcid AS orig_catsrcid + ,CONCAT(TRIM(aname), af_name) AS catsrcname ,CASE WHEN aframe LIKE 'WNH%' THEN icatid_main ELSE icatid_pole - END + END AS cat_id ,CASE WHEN aframe LIKE 'WNH%' THEN iband_main ELSE iband_pole - END - ,aviz_RAJ2000 - ,aviz_DEJ2000 - ,CAST(FLOOR(aviz_DEJ2000) AS INTEGER) - ,CASE WHEN a_I / arms >= 10 - THEN 1.5 - ELSE CASE WHEN amajor <> 0 - THEN SQRT(2.25 + arms * arms * (amajor * amajor * SIN(RADIANS(apa)) * SIN(RADIANS(apa)) - + aminor * aminor * COS(RADIANS(apa)) * COS(RADIANS(apa)) - ) / (1.69 * a_I * a_I)) - ELSE SQRT(2.25 + arms * arms * 2916 / (1.69 * a_I * a_I)) - END - END - ,CASE WHEN a_I / arms >= 10 - THEN 1.5 - ELSE CASE WHEN amajor <> 0 - THEN SQRT(2.25 + arms * arms * (amajor * amajor * COS(RADIANS(apa)) * COS(RADIANS(apa)) - + aminor * aminor * SIN(RADIANS(apa)) * SIN(RADIANS(apa)) - ) / (1.69 * a_I * a_I)) - ELSE SQRT(2.25 + arms * arms * 2916 - / (1.69 * a_I * a_I * SIN(RADIANS(aviz_DEJ2000)) * SIN(RADIANS(aviz_DEJ2000))) - ) - END - END + END AS band + ,aviz_RAJ2000 AS ra + ,aviz_DEJ2000 AS decl + ,CAST(FLOOR(aviz_DEJ2000) AS INTEGER) AS zone + ,CASE WHEN a_I >= 10 * arms + THEN 1.5 * a_I * a_I + WHEN amajor <> 0 + THEN 2.25 + 0.592 * arms * arms * ( amajor * amajor * SIN(RADIANS(apa)) * SIN(RADIANS(apa)) + + aminor * aminor * COS(RADIANS(apa)) * COS(RADIANS(apa))) + ELSE 2.25 + arms * arms * 1725 + END AS ra_err_inter + ,CASE WHEN a_I >= 10 * arms + THEN 1.5 * a_I * a_I + WHEN amajor <> 0 + THEN 2.25 + 0.592 * arms * arms * ( amajor * amajor * COS(RADIANS(apa)) * COS(RADIANS(apa)) + + aminor * aminor * SIN(RADIANS(apa)) * SIN(RADIANS(apa))) + ELSE 2.25 + arms * arms * 1725 * (1 + COT(RADIANS(aviz_DEJ2000)) * COT(RADIANS(aviz_DEJ2000))) + END AS decl_err_inter ,CASE WHEN aframe LIKE 'WNH%' THEN ifreq_eff_main ELSE ifreq_eff_pole - END - ,COS(RADIANS(aviz_DEJ2000)) * COS(RADIANS(aviz_RAJ2000)) - ,COS(RADIANS(aviz_DEJ2000)) * SIN(RADIANS(aviz_RAJ2000)) - ,SIN(RADIANS(aviz_DEJ2000)) - ,aflg1 + END AS freq_eff + ,COS(RADIANS(aviz_DEJ2000)) * COS(RADIANS(aviz_RAJ2000)) AS x + ,COS(RADIANS(aviz_DEJ2000)) * SIN(RADIANS(aviz_RAJ2000)) AS y + ,SIN(RADIANS(aviz_DEJ2000)) AS z + ,aflg1 AS src_type ,CASE WHEN aflg2 = '*' THEN aflg2 ELSE NULL - END - ,apa - ,amajor - ,aminor - ,a_I / 1000 - ,SQRT(C1_sq + C2_sq * (arms / a_I) * (arms / a_I)) * a_I / 1000 - ,a_S / 1000 - ,SQRT(C1_sq + C2_sq * (arms / a_S) * (arms / a_S)) * a_S / 1000 - ,aframe + END AS fit_probl + ,apa AS pa + ,amajor AS major + ,aminor AS minor + ,a_I / 1000 AS i_peak_avg + ,SQRT(C1_sq + C2_sq * (arms / a_I) * (arms / a_I)) * a_I / 1000 AS i_peak_avg_err + ,a_S / 1000 AS i_int_avg + ,SQRT(C1_sq + C2_sq * (arms / a_S) * (arms / a_S)) * a_S / 1000 AS i_int_avg_err + ,aframe AS frame + ,a_I FROM aux_catalogedsources WHERE a_S > 0 --- AND af_name a_S > 0 + ) t ; DROP TABLE aux_catalogedsources; diff -Nru gsm-2.1.8/setup.py gsm-2.2.2/setup.py --- gsm-2.1.8/setup.py 2018-01-31 11:06:36.000000000 +0000 +++ gsm-2.2.2/setup.py 2018-12-07 14:17:21.000000000 +0000 @@ -1,7 +1,7 @@ from setuptools import setup setup(name='gsm' - ,version='2.1.8' + ,version='2.2.2' ,description="LOFAR's Global Sky Model (GSM)" ,url='https://github.com/bartscheers/gsm' ,author='Bart Scheers'