Coder Social home page Coder Social logo

Comments (7)

kmoppel avatar kmoppel commented on July 24, 2024

Hi @pmpetit,
Have you tried setting "free_space_extra" to zero? Haven't looked into code but sounds like it...

free_space_extra int NOT NULL DEFAULT 50,
CHECK (free_space_extra >= 0 AND free_space_extra < 100),

from pg_squeeze.

pmpetit avatar pmpetit commented on July 24, 2024

i give it a try, thanks

also :
i can see there that there is fn

Schema | squeeze
Name | squeeze_table
Result data type | void
Argument data types | tabchema name, tabname name, clustering_index name, rel_tablespace name, ind_tablespaces name[]
Type | func

Do you think i can use it ?

from pg_squeeze.

pmpetit avatar pmpetit commented on July 24, 2024

if it is ok, i could not use it without setting a day in the cronjob, the table has 2To rows, i can not squeeze it every day...

from pg_squeeze.

pmpetit avatar pmpetit commented on July 24, 2024

Also, as there is an eavy insert load on the server (12), if i understand the process, you will create a logical replication slot. But i often face this msg, if i want to create a replication slot.

postgres@stock(europe)=# select * from pg_create_logical_replication_slot('slot1','pgoutput');
ERROR: cannot create logical replication slot in transaction that has performed writes
postgres@stock(europe)=#

Thanks

from pg_squeeze.

ahouska avatar ahouska commented on July 24, 2024
  1. Yes, you can call the squeeze.squeeze_table() interactively.
  2. Why are you trying to create the replication slot? pg_squeeze creates it automatically for its purposes and it eventually drops it. Anyway, if you are trying to create a replication slot for any reason, the error message indicates that you do so in BEGIN - END block, don't you?

from pg_squeeze.

pmpetit avatar pmpetit commented on July 24, 2024

i try to create the replication slot manually, because i try to understand what's happening:
i face this message if pg_show_plans is installed:
postgres@pgbench(silver01)=# SELECT * from squeeze.squeeze_table('public','pgbench_accounts','pgbench_accounts_pkey',null,null);
ERROR: cannot create logical replication slot in transaction that has performed writes
postgres@pgbench(silver01)=#
if i remove drop extension "pg_show_plans" AND pg_show_plans from shared_preload_libraries, then it is ok
and i do not execute squeeze.squeeze_table() between BEGIN - END block

from pg_squeeze.

ahouska avatar ahouska commented on July 24, 2024

Thanks for the report and for your investigation! Indeed, pg_show_plans seems to be the root cause. I've just created a report for that.

from pg_squeeze.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.