git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2] midx: use buffered I/O to talk to pack-objects

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 12, 2020, 20:28 UTC
Message-ID
<xmqqh7t7623d.fsf@gitster.c.googlers.com>
In-Reply-To
<9162c1cb-36fd-3203-ec58-4bd1501938d0@web.de>
René Scharfe <l.s.r@web.de> writes:
>  		nth_midxed_object_oid(&oid, m, i);
> -		xwrite(cmd.in, oid_to_hex(&oid), the_hash_algo->hexsz);
> -		xwrite(cmd.in, "\n", 1);
> +		fprintf(cmd_in, "%s\n", oid_to_hex(&oid));

I do think it is silly to send an object name and terminating LF in two different system calls per object.

The original uses xwrite() so that it does not have to worry about having to restart interrupted system calls and such. Do we need to do that ourselves now or does the stdio layer take care of it for us?

Show 8 quoted lines
>  	}
> -	close(cmd.in);
> +	fclose(cmd_in);
>
>  	if (finish_command(&cmd)) {
>  		error(_("could not finish pack-objects"));
> --
> 2.28.0
Previous: René ScharfeNext: Junio C Hamano
Message 11 of 14 in “midx: use buffered I/O to talk to pack-objects”
  1. midx: use buffered I/O to talk to pack-objectsRené Scharfe, Aug 2, 2020
  2. Chris TorekAug 2, 2020
  3. Johannes SixtAug 3, 2020
  4. René ScharfeAug 3, 2020
  5. René ScharfeAug 4, 2020
  6. Junio C HamanoAug 4, 2020
  7. Derrick StoleeAug 3, 2020
  8. René ScharfeAug 11, 2020
  9. Derrick StoleeAug 11, 2020
  10. midx: use buffered I/O to talk to pack-objectsRené Scharfe, Aug 12, 2020
  11. Junio C HamanoAug 12, 2020
  12. Junio C HamanoAug 12, 2020
  13. Jeff KingAug 13, 2020
  14. Jeff KingAug 13, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.