Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vO9t3-00CYMy-17 for pgsql-hackers@arkaria.postgresql.org; Wed, 26 Nov 2025 07:24:25 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vO9t1-00ErX1-1u for pgsql-hackers@arkaria.postgresql.org; Wed, 26 Nov 2025 07:24:23 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vO9t1-00ErWt-0v for pgsql-hackers@lists.postgresql.org; Wed, 26 Nov 2025 07:24:23 +0000 Received: from mail-dy1-x132a.google.com ([2607:f8b0:4864:20::132a]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vO9sy-001Z5N-2t for pgsql-hackers@lists.postgresql.org; Wed, 26 Nov 2025 07:24:23 +0000 Received: by mail-dy1-x132a.google.com with SMTP id 5a478bee46e88-2a484a0b7cfso715855eec.1 for ; Tue, 25 Nov 2025 23:24:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764141858; x=1764746658; darn=lists.postgresql.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=/YeWqzei213/79ir6tLOKneIv8sjEQUL3dnX88/Pv1o=; b=hIdsKQq6ax+Fef830cVtfJLL55SIcMGKQX2zNK8rZCg7iy9TU8ewwKBeu5GhM403E7 aZWKB07J8sOMU+t2Ohtgn5trSDRtuEP6IEBa7XOoAPbh4Ft7hLAKJj97ztqxI3o293yy gtVjWgLkXfOjhWf9kmT1Wd0Gd0p+t3ZPKq859BMzh8LUc+Ui9muQWbP4FozWM/tw0LKo RqYpABIkQKKQkMhpznE3oW/XBJPrYAUfwf9jXK22FinRXfVQuNp/rTThdmFm68pDZjbo yeB9S+P1/kPZNT+4yzTPvlMQJaRspqwW5XWVZdZxNTMt+f+xr7TFGrDlTQ6NqJUxXng5 9+yw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764141858; x=1764746658; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-gg:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=/YeWqzei213/79ir6tLOKneIv8sjEQUL3dnX88/Pv1o=; b=NVDR0/pK2TSjSIHnSNq889e2nP1n4VhIeIzrFQrhKzVOHhUPZWO1TyuCKuAtpNNVda lxSpdItX3Ertue3Yf9blw0w0HWKTOPg4/bV26c/grx3V47TEjAjPU3oak1JWo5x/6E0j NtIcV+mymNck84XTCodqEDxOOT99JnPFpkS2fbmN7k4SeCHIfQuPX1i45B6NBhHn6Xe7 Jkhw3VupilkkdmS5MTqIcxB+6d7TzwwO3u3iBr1VTp64PyqmZgvs1kxib2+VQmZOl6HV pLTm6wEjPqMhI6VEL4Kyh+I6h64JOUibm0z/ogR3joCGIpEBTtj4/Ng0O5grIDrdkGPa eNLg== X-Forwarded-Encrypted: i=1; AJvYcCUOy9Ds1ROMlXn/EliPiifLy2PWfI9dSDZYb+voCYIiPoUI08JlgIgIOCDqi4dXitasxdap2TXR7glxF7B3@lists.postgresql.org X-Gm-Message-State: AOJu0YyKHTyTfKyP6yg5EKw/OhE54FYHkRadl7p0+qesIsHbTJXtTLtY 95zxei1Qg5LUE2fDf3fIx4v03OrBbDmAl2M+9I9wq+XigAwO3K28XEDn X-Gm-Gg: ASbGncu81Qflu69B1xa9szckD6AcZt0L2N1xNxs3NJWz/CI8xnrj7jlXC3AYlEPXW9R f7uEQxHzIb/yc6DMfYh496ioiZYXjvu+XN8qOayJ3EDrvLDJeb8CkesZAfa51RbekzKKUBXSAt1 yytMGDyXEGm1fe3qXMJ9ACDo1o5DVpXrgBdC7InbpMg//YetX07+kMYePAckJmlKCUeqNdwVzv6 TUOvAClI4zG1LS3YFEQbGGz9SUx0W0JS7ugSyQigdMt8S1t2GysdJwcsufpi35D5ZaKO022XQqN Yzz4y0+br8m+n7qPgF/qCToOx5cszEiIhb1VSeWrwOrSA5c1sgx7fpbtUn0TYu67tVdyQ2XY/dB afsnMkYPphEFl2r+DMBhUI6Esam7UmgXvnRYvOzda7sNZZY9tBqYupvGiSaFu2P9IeCM6GL8RNy 35HSzANZ0rQovQvV8jvfMV X-Google-Smtp-Source: AGHT+IGJkJhimD5m54bmHSDFLkBFv3BA5ASXtSm4o0VFmQZaJ1utRPMG4v+cgfXShgc3vybUF90jQA== X-Received: by 2002:a05:7022:249b:b0:119:e569:f851 with SMTP id a92af1059eb24-11c94b0b6e7mr12731681c88.8.1764141857626; Tue, 25 Nov 2025 23:24:17 -0800 (PST) Received: from smtpclient.apple ([142.171.105.12]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11c93e3e945sm89475487c88.6.2025.11.25.23.24.14 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 25 Nov 2025 23:24:16 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81\)) Subject: Re: pg_waldump: support decoding of WAL inside tarfile From: Chao Li In-Reply-To: Date: Wed, 26 Nov 2025 15:23:39 +0800 Cc: Jakub Wartak , Robert Haas , PostgreSQL Hackers Content-Transfer-Encoding: quoted-printable Message-Id: <6220A42D-D610-4EC0-97C6-977E6BBC328B@gmail.com> References: <731ADE6F-01C5-4996-BAEE-5851DFC3F502@gmail.com> To: Amul Sul X-Mailer: Apple Mail (2.3826.700.81) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk > On Nov 26, 2025, at 14:02, Amul Sul wrote: >=20 >> 9 - 0004 >> ``` >> +/* >> + * Create an astreamer that can read WAL from tar file. >> + */ >> +static astreamer * >> +astreamer_waldump_new(XLogDumpPrivate *privateInfo) >> +{ >> + astreamer_waldump *streamer; >> + >> + streamer =3D palloc0(sizeof(astreamer_waldump)); >> + *((const astreamer_ops **) &streamer->base.bbs_ops) =3D >> + &astreamer_waldump_ops; >> + >> + streamer->privateInfo =3D privateInfo; >> + >> + return &streamer->base; >> +} >> ``` >>=20 >> This function allocates memory for streamer but only returns = &streamer->base, so memory of streamer is leaked. >>=20 >=20 > May I know why you think there would be a memory leak? I believe the > address of the structure is the same as the address of its first > member, base. I am returning base because the goal is to return a > generic astreamer type, which is the standard approach used in other > archive streamer code. Ah=E2=80=A6 Got it. Best regards, -- Chao Li (Evan) HighGo Software Co., Ltd. https://www.highgo.com/