pg_hexedit

Open PostgreSQL relation files in a hex editor with tags and annotations (by petergeoghegan)

Pg_hexedit Alternatives

Similar projects and alternatives to pg_hexedit

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better pg_hexedit alternative or higher similarity.

pg_hexedit reviews and mentions

Posts with mentions or reviews of pg_hexedit. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-02-26.
  • Tweak: An Efficient Hex Editor
    2 projects | news.ycombinator.com | 26 Feb 2021
    I am the author of a tool that generates wxHexEditor tags and annotations for Postgres relation files -- pg_hexedit:

    https://github.com/petergeoghegan/pg_hexedit

    I've invested quite a lot of effort in it, and it would be nice to have support for multiple hex editors. That was anticipated to some degree:

    https://github.com/petergeoghegan/pg_hexedit#supporting-othe...

    I understand why you favor a declarative template format for describing files with tags -- that probably scales really nicely. What I'm doing is pretty grotty, but works surprisingly well in practice. I procedurally generate a description of each file in a shell script, and then open the file in wxHexEditor. I'm generating huge XML files, which is slow, but there are simple workarounds to get acceptable performance.

    wxHexEditor doesn't support declarative tags. But even if it did I might not want to use them; the on-disk format of PostgreSQL is much more complicated than most file formats, and isn't supposed to be consumed by third party tools. Writing a C program that uses the struct definitions from the server itself makes the complexity quite manageable -- the tool is basically feature complete, even though I haven't spent a huge amount of time on it.

    That said, it would be great if I could adapt pg_hexedit to a hex editor that had some kind of "best of both worlds" support for tags - tags that can be generated lazily and on-demand, when a portion of the file needs to be drawn or redrawn. This would be easy to adapt to -- Postgres relation files always consist of a series of 8KiB blocks/pages. My tool can easily generate tags for any single block without knowing any special context or having any expensive-to-generate state -- I just need a block number (i.e. an 8KiB-aligned byte offset).

Stats

Basic pg_hexedit repo stats
1
143
3.6
6 months ago

petergeoghegan/pg_hexedit is an open source project licensed under GNU General Public License v3.0 or later which is an OSI approved license.

The primary programming language of pg_hexedit is C.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com