mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	Add regression test coverage for non-default timezone abbreviation sets.
After further reflection about the mess cleaned up in commit 39b691f25,
I decided the main bit of test coverage that was still missing was to
check that the non-default abbreviation-set files we supply are usable.
Add that.
Back-patch to supported branches, just because it seems like a good
idea to keep this all in sync.
			
			
This commit is contained in:
		@@ -2365,3 +2365,18 @@ select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
 | 
				
			|||||||
 t
 | 
					 t
 | 
				
			||||||
(1 row)
 | 
					(1 row)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- Let's check the non-default timezone abbreviation sets, too
 | 
				
			||||||
 | 
					set timezone_abbreviations = 'Australia';
 | 
				
			||||||
 | 
					select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
 | 
				
			||||||
 | 
					 ok 
 | 
				
			||||||
 | 
					----
 | 
				
			||||||
 | 
					 t
 | 
				
			||||||
 | 
					(1 row)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set timezone_abbreviations = 'India';
 | 
				
			||||||
 | 
					select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
 | 
				
			||||||
 | 
					 ok 
 | 
				
			||||||
 | 
					----
 | 
				
			||||||
 | 
					 t
 | 
				
			||||||
 | 
					(1 row)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -390,3 +390,8 @@ SELECT '2007-12-09 07:30:00 UTC'::timestamptz AT TIME ZONE 'VET';
 | 
				
			|||||||
--
 | 
					--
 | 
				
			||||||
select count(distinct utc_offset) >= 24 as ok from pg_timezone_names;
 | 
					select count(distinct utc_offset) >= 24 as ok from pg_timezone_names;
 | 
				
			||||||
select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
 | 
					select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
 | 
				
			||||||
 | 
					-- Let's check the non-default timezone abbreviation sets, too
 | 
				
			||||||
 | 
					set timezone_abbreviations = 'Australia';
 | 
				
			||||||
 | 
					select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
 | 
				
			||||||
 | 
					set timezone_abbreviations = 'India';
 | 
				
			||||||
 | 
					select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -34,6 +34,11 @@ in the same commit.  Usually, if a known abbreviation has changed meaning,
 | 
				
			|||||||
the appropriate fix is to make it refer to a long-form zone name instead
 | 
					the appropriate fix is to make it refer to a long-form zone name instead
 | 
				
			||||||
of a fixed GMT offset.
 | 
					of a fixed GMT offset.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The core regression test suite does some simple validation of the zone
 | 
				
			||||||
 | 
					data and abbreviations data (notably by checking that the pg_timezone_names
 | 
				
			||||||
 | 
					and pg_timezone_abbrevs views don't throw errors).  It's worth running it
 | 
				
			||||||
 | 
					as a cross-check on proposed updates.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
When there has been a new release of Windows (probably including Service
 | 
					When there has been a new release of Windows (probably including Service
 | 
				
			||||||
Packs), the list of matching timezones need to be updated. Run the
 | 
					Packs), the list of matching timezones need to be updated. Run the
 | 
				
			||||||
script in src/tools/win32tzlist.pl on a Windows machine running this new
 | 
					script in src/tools/win32tzlist.pl on a Windows machine running this new
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user