Skip to Content.
Sympa Menu

sm-commit - [SM-Commit] GIT changes to master sorcery by Jaka Kranjc (db974d1943f1aceb21eede4aff3c4226262fc1e9)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: Jaka Kranjc <scm AT sourcemage.org>
  • To: sm-commit AT lists.ibiblio.org
  • Subject: [SM-Commit] GIT changes to master sorcery by Jaka Kranjc (db974d1943f1aceb21eede4aff3c4226262fc1e9)
  • Date: Thu, 15 Sep 2011 17:22:04 -0500

GIT changes to master sorcery by Jaka Kranjc <lynxlynxlynx AT sourcemage.org>:

ChangeLog | 1 +
var/lib/sorcery/modules/libstage | 32 ++++++++++++++++++--------------
2 files changed, 19 insertions(+), 14 deletions(-)

New commits:
commit db974d1943f1aceb21eede4aff3c4226262fc1e9
Author: Jaka Kranjc <lynxlynxlynx AT sourcemage.org>
Commit: Jaka Kranjc <lynxlynxlynx AT sourcemage.org>

libstage: stat only once to improve transfer speed

for python, which is the spell with the most installed files in my system,
the total transfer time went down roughly by a third!

diff --git a/ChangeLog b/ChangeLog
index 215ad36..6790e00 100755
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,7 @@
* libsecurity: use filename_indicates_compression
* libunpack: added xz, 7z and lzma support #13176
* libsorcery: added xz compression support #13176
+ * libstage: stat only once to improve transfer speed

2011-09-14 Jaka Kranjc <lynxlynxlynx AT sourcemage.org>
* config: unset GREP_OPTIONS in case the user set it to something bad
diff --git a/var/lib/sorcery/modules/libstage
b/var/lib/sorcery/modules/libstage
index cffe83a..875515b 100755
--- a/var/lib/sorcery/modules/libstage
+++ b/var/lib/sorcery/modules/libstage
@@ -82,9 +82,10 @@ function stage_install_files()
function stage_install_directory()
{
local DIR=$1
- local PERMISSION=$(stat -c %a "${STAGE_DIRECTORY}/TRANSL/${DIR}")
- local OWNER=$(stat -c %U "${STAGE_DIRECTORY}/TRANSL/${DIR}")
- local GROUP=$(stat -c %G "${STAGE_DIRECTORY}/TRANSL/${DIR}")
+ local stat=( $(stat --printf "%a\n%U\n%G\n" "$STAGE_DIRECTORY/TRANSL/$DIR"
) )
+ local PERMISSION=${stat[0]}
+ local OWNER=${stat[1]}
+ local GROUP=${stat[2]}
if [[ ! -d $(smgl_dirname "${INSTALL_ROOT}/$DIR") ]]
then
# this shouldn't happen but just in case
@@ -106,9 +107,10 @@ function stage_install_directory()
function stage_install_file()
{
local FILE=$1
- local PERMISSION=$(stat -c %a "${STAGE_DIRECTORY}/TRANSL/$FILE")
- local OWNER=$(stat -c %U "${STAGE_DIRECTORY}/TRANSL/$FILE")
- local GROUP=$(stat -c %G "${STAGE_DIRECTORY}/TRANSL/$FILE")
+ local stat=( $(stat --printf "%a\n%U\n%G\n"
"$STAGE_DIRECTORY/TRANSL/$FILE" ) )
+ local PERMISSION=${stat[0]}
+ local OWNER=${stat[1]}
+ local GROUP=${stat[2]}
local SAVE="$CONFIG_STAGE_DIRECTORY/$SPELL/current/$FILE"
message "${FILE_COLOR}$PERMISSION $OWNER:$GROUP $FILE${DEFAULT_COLOR}"
case $2 in
@@ -160,9 +162,10 @@ function stage_install_fifo()
{
local FILE=$1
local SAVE=$CONFIG_STAGE_DIRECTORY/$FILE.$(date +%Y%m%d%H%M%S)
- local PERMISSION=$(stat -c %a "${STAGE_DIRECTORY}/TRANSL/$FILE")
- local OWNER=$(stat -c %U "${STAGE_DIRECTORY}/TRANSL/$FILE")
- local GROUP=$(stat -c %G "${STAGE_DIRECTORY}/TRANSL/$FILE")
+ local stat=( $(stat --printf "%a\n%U\n%G\n"
"$STAGE_DIRECTORY/TRANSL/$FILE" ) )
+ local PERMISSION=${stat[0]}
+ local OWNER=${stat[1]}
+ local GROUP=${stat[2]}
message "${FILE_COLOR}Fifo $PERMISSION $OWNER:$GROUP $FILE${DEFAULT_COLOR}"
case $2 in
config)
@@ -190,11 +193,12 @@ function stage_install_fifo()
function stage_install_char_block()
{
local FILE=$1
- local PERMISSION=$(stat -c %a "${STAGE_DIRECTORY}/TRANSL/$FILE")
- local MAJOR=$(stat -c %t "${STAGE_DIRECTORY}/TRANSL/$FILE")
- local MINOR=$(stat -c %T "${STAGE_DIRECTORY}/TRANSL/$FILE")
- local OWNER=$(stat -c %U "${STAGE_DIRECTORY}/TRANSL/$FILE")
- local GROUP=$(stat -c %G "${STAGE_DIRECTORY}/TRANSL/$FILE")
+ local stat=( $(stat --printf "%a\n%U\n%G\n%t\n%T\n"
"$STAGE_DIRECTORY/TRANSL/$FILE" ) )
+ local PERMISSION=${stat[0]}
+ local OWNER=${stat[1]}
+ local GROUP=${stat[2]}
+ local MAJOR=${stat[3]}
+ local MINOR=${stat[4]}
local SAVE=$CONFIG_STAGE_DIRECTORY/$FILE.$(date +%Y%m%d%H%M%S)
local TYPE=$3
message "${FILE_COLOR}${PERMISSION} $OWNER:$GROUP $TYPE $MAJOR $MINOR
$FILE${DEFAULT_COLOR}"



  • [SM-Commit] GIT changes to master sorcery by Jaka Kranjc (db974d1943f1aceb21eede4aff3c4226262fc1e9), Jaka Kranjc, 09/15/2011

Archive powered by MHonArc 2.6.24.

Top of Page