Re: AIX support
Heikki Linnakangas <hlinnaka@iki.fi>
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Restore AIX support.
- 4a1b05caa55d 19 (unreleased) landed
-
pg_createsubscriber: Improve error messages.
- 898c131b58a0 18.0 cited
-
Use <stdint.h> and <inttypes.h> for c.h integers.
- 962da900ac8f 18.0 cited
-
Stabilize jsonb_path_query test case.
- af2115226831 18.0 cited
-
Fix C23 compiler warning
- d2b4b4c2259e 18.0 cited
-
pg_stat_statements: Add tests for nested queries with level tracking
- 45e0ba30fc40 18.0 cited
-
Add missing newline at the end of index_including.sql
- 54b69f1bd730 17.0 cited
-
Remove AIX support
- 0b16bb8776bb 17.0 cited
-
Fix s_lock.h PPC assembly code to be compatible with native AIX assembler.
- c41a1215f049 9.6.0 cited
-
Use a non-locking initial test in TAS_SPIN on PPC.
- bc2a050d4097 9.2.0 cited
-
Use LWSYNC in place of SYNC/ISYNC in PPC spinlocks, where possible.
- 631beeac3598 9.2.0 cited
-
Use mutex hint bit in PPC LWARX instructions, where possible.
- 5cfa8dd3007d 9.2.0 cited
-
Adjust TAS assembly as per recent discussions: use "+m"(*lock) everywhere
- 109867748259 8.0.0 cited
-
Apple's assembler likes the inlined TAS syntax too, so no reason to
- f9ba0a7fe563 7.4.1 cited
-
Tighten up register usage for inline PPC version of tas().
- eb5e4c58d137 7.4.1 cited
-
Put the isync where it's supposed to be.
- cd35d601b859 7.4.1 cited
-
> > I'll re-check that with the ppc architecture guy here.
- ceb4f5ea9c2c 7.4.1 cited
-
Fix PPC s_lock operations to work correctly on multi-CPU machines.
- 7233aae50bea 7.3.1 cited
-
I tried to build PostgreSQL with the following step to see backends hung
- 50938576d482 7.3.1 cited
-
Complete merge of all old man page information.
- f2f43efbe1d5 7.1.1 cited
-
s_lock aix patch.
- e3b06a871b63 7.1.1 cited
On 23/05/2024 18:36, Srirama Kucherlapati wrote: > Hi Peter, thanks for your feedback. > > We are eager to extend our support in resolving the issues specific > to AIX or corresponding compilers (XLC and cLang). > > But as there are no issues with the patch after reverting the > changes(with the latest compilers gcc12 and xlc-16.0.1.18), we were > wondering if this patch can be merged with the current release 17?? > > Having said that, we are committed to resolve all the hacks and > caveats that got accumulated specific to AIX over the period by > picking and resolving one after the other, rather than waiting for > all the hacks to be fixed. I'm not eager to put back those hacks just to have them be removed again. So I'd like to see a minimal patch, with the *minimal* changes required for AIX support. And perhaps split that into two patches: First add back AIX support with GCC, and second patch to add XLC support. I'd like to to see how much of the changes are because of the different compiler and how much from the OS. No promises for v17, but if the patch is small and non-intrusive, I would consider it at least. But let's see what it looks like first. It's the same work that needs to be done whether it goes into v17 or v18 anyway. >> One of the reasons that the AIX port ultimately became >> unmaintainable was that so many hacks and caveats were accumulated >> over the years. A new port should set a more recent baseline and >> trim all those hacks. > > Please help me understand this, with respect to the AIX specific > hacks, is it just we can find all the location where _AIX macros are > involved OR can we just look at the patch changes only, as all the > changes that were made were specific to AIX. If not, is there any > other location where we could find all the hacks to be resolved. > > Can you provide some more details on the expectations here? Smallest possible patch that makes Postgres work on AIX again. Perhaps start with the patch you posted yesterday, but remove hunks from it one by one, to see which ones are still needed. -- Heikki Linnakangas Neon (https://neon.tech)